无法在 Ionic Framework 上使用人行横道获取地理位置(未发现错误)
Cannot get Geolocation with Crosswalk on Ionic Framework (No errors found)
在我将基于Ionic的应用程序与Crosswalk集成之前,获取地理位置信息运行良好。但是当我使用Crosswalk时,它加快了我的应用程序速度,并且除了地理位置之外,它运行良好。我无法获取纬度/经度,但我的应用程序中没有错误警报。
我的代码是一样的。
var onSuccess = function(position) {
localStorage.latitude = position.coords.latitude;
localStorage.longitude = position.coords.longitude;
};
function onError(error) {
alert('code: ' + error.code + ''n' +
'message: ' + error.message + ''n');
}
navigator.geolocation.getCurrentPosition(onSuccess, onError);
这个功能似乎已经被人行横道开发团队注意到了,并且已经进行了一轮修复,所以现在应该可以在大多数设备上工作。有关详细信息,请参阅此线程。
您必须尝试/验证的最明显的解决方案是您已在设备上启用定位服务!
设置 ->位置->启用位置 (GPS/WIFI)
对我来说绝对是这种情况,但是,如果您发现自己在不受支持的设备上(请参阅上面的线程),那么您将有多种选择......
- 更新您的安卓版本。
- 切换到兼容的设备。
- 等待人行横道支撑它。
祝你好运。
我也注意到了同样的情况。 由于某种原因,基于浏览器的 navigator.geolocation 对象在 Cordova与人行横道容器不起作用。
您可以为科尔多瓦安装地理位置插件。
cordova plugin add cordova-plugin-geolocation
这为我解决了问题,无需重写代码,因为它替换了相同的导航器对象。
使用地理位置需要用户权限,因此您需要在人行横道manifest.json
上通过添加以下内容来指定它:
"xwalk_permissions": [
"Contacts",
"Geolocation",
"Messaging",
"Vibration"
]
(阅读 https://crosswalk-project.org/documentation/manifest/permissions.html)。
更新
我解决了:
"xwalk_android_permissions": [ "ACCESS_FINE_LOCATION" ]
相关文章:
- 如何在javascript清单中获取地理位置权限
- JSON获取地理位置在HTML中未返回值
- 获取地理位置's城市名称
- javascript 中的全局变量来获取地理位置
- 是否可以在javascript中基于地理位置获取街道详细信息
- 获取地理位置以传播输入
- 如何使用html/html5中的用户输入获取完整的地理位置详细信息
- 无法在 Ionic Framework 上使用人行横道获取地理位置(未发现错误)
- Sencha触摸地理位置在设备上(iPhone 5)上2-3次后获取当前位置不起作用
- Angular js cordova地理位置获取当前位置并在后台将数据发送到服务器
- 如何从网络网址获取地理位置
- 从没有谷歌地理位置的地址获取纬度/经度
- 如何使用 IP 地址 + 地理位置获取用户位置 Asp.Net.
- 导航器地理位置获取当前位置不起作用
- 地理位置代码获取附近的城市
- 如何获取纬度和经度的地理位置坐标
- 无法在Chrome 47中获取地理位置
- 如何在openweather API中获取地理位置
- 获取以前找到的地理位置地址
- Javascript,使用地理位置获取城市名称