我有一个PhoneGap应用程序,它立即将window.location设置为我的互联网站点,并从那里继续工作。该应用程序运行良好,除了以下非常奇怪的行为。
我试图通过调用来获取地理位置:
function geoErrorHandler(error) {
console.log("getCurrentPosition failed with error message: " + error.message);
}
function showPosition(position) {
// blah
}
var options = {maximumAge:60000, timeout:5000, enableHighAccuracy:true};
navigator.geolocation.getCurrentPosition(showPosition, geoErrorHander, options);
在iOS上,它在我的PhoneGap应用程序中运行良好。当页面刚刚加载到桌面浏览器中时,它也可以正常工作。但是,在我的Android PhoneGap应用上,它会调用我的geoErrorHandler。这很好 - 当然我可以找出问题是什么!除非它用错误调用它有错误。消息=""和error.code = null。 Hrhum。
它在两个独立的设备上执行此操作,并且相当多的互联网搜索似乎并未向其他人透露此行为。我做错了什么?!
答案 0 :(得分:0)
也许是权限问题?
尝试添加到您的清单ACCESS_COARSE_LOCATION,ACCESS_LOCATION_EXTRA_COMMANDS和ACCESS_FINE_LOCATION权限
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
<uses-permission android:name="android.permission.ACCESS_LOCATION_EXTRA_COMMANDS" />
http://developer.android.com/reference/android/Manifest.permission.html