【发布时间】:2017-02-07 12:06:53
【问题描述】:
在 Android 上,我检查是否使用
启用了位置LocationManager.isProviderEnabled(GPS_PROVIDER) || LocationManager.isProviderEnabled(NETWORK_PROVIDER)
这项工作正常,但是在棉花糖(及更高版本)上,当用户进入应用程序设置并仅拒绝我的应用程序使用该位置的权限(仅适用于我的应用程序,如 mashmallow 现在允许这样做)然后是前一个请求仍然返回true
我也试试:
MyActivity.checkSelfPermission('android.permission.ACCESS_FINE_LOCATION') == PERMISSION_GRANTED or MyActivity.checkSelfPermission('android.permission.ACCESS_COARSE_LOCATION') == PERMISSION_GRANTED
但即使用户拒绝我的应用程序的权限,它也总是返回 true
【问题讨论】:
-
您的
targetSdkVersion设置为什么? -
到 14(我现在不能增加它)但通常没关系,不是吗?因为 checkSelfPermission 仅在 api 23 上引入,所以如果 targetSdkVersion
标签: android android-6.0-marshmallow android-permissions