Клуб API Карт

API 2.1 geolocation.get Safari не поддерживает?

yeastor
3 июля 2014, 15:14

Пример из песочницы http://api.yandex.ru/maps/jsbox/2.1/geolocation, в safari (5.1.7 windows, а также на IOS) не создается синяя метка

geolocation.get({
   ...
}).then(function (result) {

alert("success");
});

"success" не появится.

Так должно быть?

7 комментариев
Подписаться на комментарии к посту

У вас в браузере разрешена геолокация?

Вы не могли бы добавить обработчик для reject и посмотреть, какая там происходит ошибка?

geolocation.get({

        provider: 'browser',

        mapStateAutoApply: true

    }).then(function (result) {

        // Синим цветом пометим положение, полученное через браузер.

        // Если браузер не поддерживает эту функциональность, метка не будет добавлена на карту.

        result.geoObjects.options.set('preset', 'islands#blueCircleIcon');

        myMap.geoObjects.add(result.geoObjects);

    }, function (error) {console.log(error)});

PositionError
  1. code: 2
    1. constructor: PositionErrorConstructor
      1. PERMISSION_DENIED: 1
      2. POSITION_UNAVAILABLE: 2
      3. TIMEOUT: 3
    message: ""
  2. __proto__: PositionErrorPrototype
Сафари по какой-то причине не имеет доступа к геолокации
https://developer.mozilla.org/en-US/docs/Web/API/PositionError

Сафари - браузер, который отстает в плане определения местонахождения и т.д.
Так что, проблема только в браузере. 

Спасибо!