html 5 UIWebview 中的地理定位 iOS 9
html 5 geolocation in UIWebview iOS 9
我一直找不到解决这个问题的方法,在我的网站上,我在 Webview 中加载我有以下 javascript 函数,在页面完成加载后 运行:
var latitude, longitude, accuracy;
function setGeolocation() {
accuracy = 5000;
var geolocation = window.navigator.geolocation.watchPosition(
function ( position ) {
if (position.coords.accuracy < accuracy){
latitude = position.coords.latitude;
longitude = position.coords.longitude;
accuracy = position.coords.accuracy;
loc = latitude + "," + longitude;
}
if (accuracy < 50) window.navigator.geolocation.clearWatch( geolocation );
},
function () { /*error*/ }, {
maximumAge: 250,
enableHighAccuracy: true
}
);
window.setTimeout( function () {
window.navigator.geolocation.clearWatch( geolocation );
}, 5000 //stop checking after 5 seconds
);
};
我已将以下内容添加到我的 Plist 文件中:
- 隐私 - 位置使用说明
- NSLocationAlwaysUsageDescription
- NSLocationWhenInUseUsageDescription
并导入CoreLocation.Framwork
知道为什么这不起作用吗?
以防万一其他人遇到这个问题,我从这个问题的第二条评论中找到了解决方案:Location Service in UIWebView on iOS8 beta 5 not working
简单:卸载应用程序并使用 XCode 重新安装,然后 BOOM 工作正常。
我一直找不到解决这个问题的方法,在我的网站上,我在 Webview 中加载我有以下 javascript 函数,在页面完成加载后 运行:
var latitude, longitude, accuracy;
function setGeolocation() {
accuracy = 5000;
var geolocation = window.navigator.geolocation.watchPosition(
function ( position ) {
if (position.coords.accuracy < accuracy){
latitude = position.coords.latitude;
longitude = position.coords.longitude;
accuracy = position.coords.accuracy;
loc = latitude + "," + longitude;
}
if (accuracy < 50) window.navigator.geolocation.clearWatch( geolocation );
},
function () { /*error*/ }, {
maximumAge: 250,
enableHighAccuracy: true
}
);
window.setTimeout( function () {
window.navigator.geolocation.clearWatch( geolocation );
}, 5000 //stop checking after 5 seconds
);
};
我已将以下内容添加到我的 Plist 文件中:
- 隐私 - 位置使用说明
- NSLocationAlwaysUsageDescription
- NSLocationWhenInUseUsageDescription
并导入CoreLocation.Framwork
知道为什么这不起作用吗?
以防万一其他人遇到这个问题,我从这个问题的第二条评论中找到了解决方案:Location Service in UIWebView on iOS8 beta 5 not working
简单:卸载应用程序并使用 XCode 重新安装,然后 BOOM 工作正常。