这是一个创建于 2170 天前的主题,其中的信息可能已经有所发展或是发生改变。
华为 Android 系统中,应用的定位权限(“您的位置”或者“读取位置信息”)怎么检测。
我使用下面四个方法检测
PackageManager.PERMISSION_GRANTED == ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_COARSE_LOCATION)
PackageManager.PERMISSION_GRANTED == ActivityCompat.checkSelfPermission(this, Manifest.permission.ACCESS_FINE_LOCATION);
ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_COARSE_LOCATION)
ActivityCompat.shouldShowRequestPermissionRationale(this, Manifest.permission.ACCESS_FINE_LOCATION)
结果开关权限后都是
true
true
false
false
2 条回复 • 2018-10-12 15:21:20 +08:00
|
|
1
ysc3839 2018-10-12 11:14:01 +08:00 via Android
估计是通过 AppOps 实现的,检测不了。
|
|
|
2
xiaohei233 2018-10-12 15:21:20 +08:00
checkSelfPermission:这个函数返回是用户是否有这个权限。 shouldShowRequestPermissionRationale:这个是判断用户是否选择了“不再询问”这个,如果用户没有这个权限或者拒绝了这个权限但是没有选中“不再询问”都是返回 false,只有选择“不在询问”才会返回 true。
|