私はこの単純なジオロケーションコードをテストしていますが、何らかの理由でiOSデバイスで動作しません。私はMacOS、Windows、Windows Phone、Androidの携帯電話などでテストしました。このHTML5ジオロケーションコードは、iOS上でユーザーの場所を取得するためには機能しません。
権限を付与した後、常に「POSITION_UNAVAILABLE」エラーが表示されます。
navigator.geolocation.getCurrentPosition(
function success(position) {
var primary = getUniqueId();
var url = endpointBaseurl +
'?property_code=' + propertyCode +
'&distribService=' + distribService +
'&lat=' + position.coords.latitude +
'&lon=' + position.coords.longitude +
'&distribTarget=' + primary;
//Update the line below to be one of your links.
addMenuItem('Offers', url);
},
function error(err) {
switch (err.code) {
case 1:
alert("You must allow location in order to receive tobacco offers. Please refresh and try again.")
break;
case 2:
alert('POSITION_UNAVAILABLE');
break;
case 3:
alert('Error 3');
break;
default:
alert("Unable to determine your location. Please refresh and try again.");
}
}, options);
私は物理デバイスとBrowserstackでテストしました。サイトはHTTPS上で動作しています。
なぜ、どうしたらうまくいかないのか、どうやってデバッグを進めていいのですか?私はこの上に私の髪を引っ張っています。
StackOverflowで[this](http://stackoverflow.com/questions/30998246/html5-geolocation-not-working-all-the-time-on-ios)の問題を見ましたか?何か助けになるかもしれない。 –