navigator.geolocation.getCurrentPosition在Android 7.0上不工作

navigator.geolocation.getCurrentPosition在Android 7.0上不工作,android,ibm-mobilefirst,cordova-plugins,Android,Ibm Mobilefirst,Cordova Plugins,我正在使用Cordova地理定位插件获取用户在IBM MobileFirst混合应用程序中的当前位置,我能够在除Android 7.0之外的所有Android设备上获取位置 在Android 7.0上,错误代码为2,消息为“应用程序没有足够的地理位置权限”。 这是我添加了androidManifest文件的代码和权限 JAVAScript Code: navigator.geolocation.getCurrentPosition(function(position) { ale

我正在使用Cordova地理定位插件获取用户在IBM MobileFirst混合应用程序中的当前位置,我能够在除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" />
JAVAScript代码:
navigator.geolocation.getCurrentPosition(函数(位置){
警报(JSON.stringify(position));
},函数(错误){
警报(“错误”+错误代码+“”+错误消息);
},{enableHighAccurance:true,timeout:10000});
Android权限:

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

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

进入`

设置->应用程序->应用程序->权限并启用 位置(拨动开关)


这应该可以让你开始了。

如果你进入设置->应用程序->应用程序->权限和启用位置,它能工作吗?@Vivin K-是的,能工作。这是意料之中的,因为Android增加了默认的安全设置Hanks Vivin K,但它是否正确地要求每个用户遵循相同的设置,甚至我也在担心如何说服客户,这就是安卓生态系统的工作原理。也许你应该和安卓/谷歌的人联系,寻求更好的方式来说服客户。