Permissions 如何使用devicepolicymanager为我的设备所有者应用程序获取android 10中的android.permission.ACCESS_BACKGROUND_位置?
这是我用来授予访问\u BACKGROUND\u LOCATION的代码,但我没有得到它。请确保您已请求并授予所有与位置相关的权限:Permissions 如何使用devicepolicymanager为我的设备所有者应用程序获取android 10中的android.permission.ACCESS_BACKGROUND_位置?,permissions,device-policy-manager,device-owner,Permissions,Device Policy Manager,Device Owner,这是我用来授予访问\u BACKGROUND\u LOCATION的代码,但我没有得到它。请确保您已请求并授予所有与位置相关的权限: String packageName = context.getPackageName(); ComponentName adminComponentName = getComponentName(context); boolean success = mDevicePolicyManager.setPermissionGrantState( admi
String packageName = context.getPackageName();
ComponentName adminComponentName = getComponentName(context);
boolean success = mDevicePolicyManager.setPermissionGrantState(
adminComponentName, packageName,
Manifest.permission.ACCESS_BACKGROUND_LOCATION,
DevicePolicyManager.PERMISSION_GRANT_STATE_GRANTED
);
也许你不需要同时设置粗略
和精细
权限,但我更希望它不那么滑稽,以防在android版本中受到不同的对待
设置中的权限ui:
- 只有当用户打开应用程序ui时,才允许访问位置api
权限被转换为允许访问位置api
- 同时具有
和访问\u FINE\u位置
将其设置为已授予访问\u BACKGROUND\u位置
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION"/>
<uses-permission android:name="android.permission.ACCESS_BACKGROUND_LOCATION"/>
mDevicePolicyManager.setPermissionGrantState(
adminComponentName, packageName,
Manifest.permission.ACCESS_COARSE_LOCATION,
DevicePolicyManager.PERMISSION_GRANT_STATE_GRANTED
);
mDevicePolicyManager.setPermissionGrantState(
adminComponentName, packageName,
Manifest.permission.ACCESS_FINE_LOCATION,
DevicePolicyManager.PERMISSION_GRANT_STATE_GRANTED
);
mDevicePolicyManager.setPermissionGrantState(
adminComponentName, packageName,
Manifest.permission.ACCESS_BACKGROUND_LOCATION,
DevicePolicyManager.PERMISSION_GRANT_STATE_GRANTED
);