尝试使用以下代码获取用户位置时:
var geoLocationProvider = new Microsoft.Maps.GeoLocationProvider(BingMap.map);
geoLocationProvider.getCurrentPosition(
{
showAccuracyCircle: false,
timeout: 6000,
successCallback: function (object) {
if (navigator.geolocation) {
//alert(ret);
SearchViewModel.ConsoleLog("watchPosition first try from getCurrentPosition successCallback");
BingMap.SetGPSLoading();
BingMap.trackingID = navigator.geolocation.watchPosition(BingMap.navigatorSuccess, BingMap.navigatorFail, { maximumAge: 4000, timeout: 10000, enableHighAccuracy: true });
}
},
errorCallback: function (error) {
if (navigator.geolocation) {
console.log(error);
alert(error.internalError.message);
SearchViewModel.ConsoleLog("watchPosition first try from getCurrentPosition errorCallback");
BingMap.SetGPSLoading();
BingMap.trackingID = navigator.geolocation.watchPosition(BingMap.navigatorSuccess, BingMap.navigatorFail, { maximumAge: 4000, timeout: 10000, enableHighAccuracy: true });
}
}
});
我在本机应用程序和Safari浏览器中的iOS10设备上收到错误,告诉我 Origin(https://domain.com)没有使用Geolocation服务的权限。代码所在的测试服务器有一个自签名证书,所以我不知道这是不是问题,或者某处存在其他配置问题。
作为旁注,所有适用的密钥都已添加到我的本地iOS应用程序的info.plist文件中。
答案 0 :(得分:0)
一堆问题: