Как заставить API геолокации работать в Dartium?

Я пытаюсь протестировать в браузере Dartium, используя API геолокации. В частности, я пытаюсь сделать следующее

window.navigator
  .geolocation.getCurrentPosition()
    ..then((pos) {

      window.alert(pos.toString());
    })
    ..catchError((PositionError error) {
      window.alert("Error code: ${error.code}, Error message: ${error.message}");
    })
    ..whenComplete(() => window.alert("complete"))
    ;

Игнорируя тот факт, что я использую здесь window.alert, все, что я получаю, это ошибка со следующим сообщением «Код ошибки: 2, сообщение об ошибке: поставщик сетевого местоположения на 'https://www.googleapis.com/' : возвращен код ошибки 400."

Однако тот же код работает в Google Chrome, когда я использую «pub serve». Он также работает с Firefox. Как обойти эту ошибку и заставить ее работать в Dartium? Это вообще возможно?

ОБНОВИТЬ

Я рассмотрел ошибку 403 и попытался использовать исправление, указанное на этой странице http://www.chromium.org/developers/how-tos/api-keys, и когда я впервые попробовал это, я неправильно ввел свои учетные данные и настройки, я получил ошибку 403, но как только это было устранено, и все включенные API, а также настройки среды

GOOGLE_API_KEY
GOOGLE_DEFAULT_CLIENT_ID
GOOGLE_DEFAULT_CLIENT_SECRET

Я вернулся к «Поставщику сетевого местоположения по адресу 'https://www.googleapis.com/': возвращена ошибка код 400.», поэтому я делаю вывод, что это не та же проблема. Хотя, если кто-то сможет доказать, что я ошибаюсь, я буду счастлив.

ДАЛЬНЕЙШЕЕ ОБНОВЛЕНИЕ

Это ошибка. Я ответил на свой вопрос ниже.


person James Hurford    schedule 29.12.2013    source источник


Ответы (2)


Возможно, вы столкнулись с этой проблемой

Геолокация выдает ошибку 403

Должно быть исправлено путем предоставления ключей Google API для Dartium.

person Günter Zöchbauer    schedule 29.12.2013
comment
Как бы я сделал это в DartEditor, сделал бы я что-то вроде, предполагая, что я использую bash для запуска DartEditor, export GOOGLE_API_KEY=aaaaaaaaaa\n GOOGLE_DEFAULT_CLIENT_ID=1111111.apps.googleusercontent.com\n export GOOGLE_DEFAULT_CLIENT_SECRET=ccccc или я должен самому скомпилировать всю кодовую базу для Dartium и установить файл conf с такими настройками, как описано в предоставленной вами ссылке??? - person James Hurford; 30.12.2013
comment
На самом деле я пытался следовать инструкциям с этой страницы chromium.org/developers/how-tos. /api-keys, и пока я получал учетные данные и неправильно устанавливал, я получал ошибку 403, но как только я настроил все в соответствии с инструкциями, я вернулся к ошибке 400. Так что я не думаю, что это та же проблема - person James Hurford; 30.12.2013
comment
Я поддерживаю вас, поскольку вы позволили мне устранить ошибку 403 как причину моих проблем. Спасибо - person James Hurford; 03.01.2014

Это ошибка.

Я разместил этот вопрос на https://groups.google.com/a/dartlang.org/forum/#!topic/web/UMJHJlQH7wc, где Сет Лэдд попросил меня открыть ошибку.

Я открыл для этого ошибку, https://code.google.com/p/dart/issues/detail?id=15866. Так что, надеюсь, это будет решено в ближайшее время.

person James Hurford    schedule 02.01.2014