navigator.geolocation.getCurrentPosition不适用于Android 7.0

时间:2017-05-03 06:07:05

标签: android ibm-mobilefirst cordova-plugins

我正在使用Cordova地理位置插件来获取IBM MobileFirst Hybrid Application中的用户当前位置,我能够在除Android 7.0之外的所有Android设备上获取位置

在Android 7.0上获取错误代码为2,消息为“应用程序没有足够的地理定位权限”。 这是我添加了androidManifest文件的代码和权限

 JAVAScript Code:
  navigator.geolocation.getCurrentPosition(function(position) {
     alert(JSON.stringify(position));
     },function(error){
        alert("error "+error.code+" "+error.message);
 },{enableHighAccuracy: true,timeout:10000});

 Android permissions:
 <uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
 <uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
 <uses-feature android:name="android.hardware.location.gps" />

1 个答案:

答案 0 :(得分:0)

您看到的根本不是MFP问题。这是从Android开始6.0开始引入的权限系统。

https://support.google.com/googleplay/answer/6270602?hl=en

要使地理位置正常工作,请执行以下操作:

进入`

  

设置 - &gt;应用程序 - &gt;您的申请 - &gt;权限和启用   位置(拨动开关)。

这应该让你去。