在设备注册时,Android Q中未通过DevicePolicyManager为设备所有者应用程序授予后台位置权限

在设备注册时,Android Q中未通过DevicePolicyManager为设备所有者应用程序授予后台位置权限,android,android-enterprise,android-enterprise-features,android-10.0,Android,Android Enterprise,Android Enterprise Features,Android 10.0,设备注册时,Android Q中未通过DevicePolicyManager为设备所有者应用授予后台位置权限 coarseP = mPolicyManager.setPermissionGrantState(mAdminComponent, mContext.getPackageName(), Manifest.permission.ACCESS_COARSE_LOCATION, DevicePolicyManager.PERMISSION_GRANT_

设备注册时,Android Q中未通过DevicePolicyManager为设备所有者应用授予后台位置权限

    coarseP = 
 mPolicyManager.setPermissionGrantState(mAdminComponent, 
  mContext.getPackageName(),
        Manifest.permission.ACCESS_COARSE_LOCATION, 
   DevicePolicyManager.PERMISSION_GRANT_STATE_GRANTED);
    fineP  = 
 mPolicyManager.setPermissionGrantState(mAdminComponent, 
  mContext.getPackageName(),
        Manifest.permission.ACCESS_FINE_LOCATION, 
  DevicePolicyManager.PERMISSION_GRANT_STATE_GRANTED);

    if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.Q)
    {
        backgroundP = 
  mPolicyManager.setPermissionGrantState(mAdminComponent, 
   mContext.getPackageName(),
            Manifest.permission.ACCESS_BACKGROUND_LOCATION, 
    DevicePolicyManager.PERMISSION_GRANT_STATE_GRANTED);
    }
所有3个API调用(GrossIP、fineP、backgroundP)的结果均为true,但仅授予前台权限


奇怪的是,当我在app update上的广播接收器中添加相同的代码时,在这种情况下会授予后台权限。

你说的是“广播接收器工作”,那么问题中的代码来自哪里?这是一项活动吗?你能显示更多的上下文吗?注册过程中的代码在后台处理程序线程上运行。我想这是一个bug,打开一个报告