因此,在 Android R 上,用户现在可以选择允许操作系统在应用未使用它们时撤销给定的权限。此新设置将在应用设置的权限部分提供(请查看屏幕截图以供参考),默认情况下,根据当前 beta 行为关闭
https://developer.android.com/preview/privacy/permissions#auto-reset
添加了一个 api 来跟踪您的应用当前是否在给定的白名单中
https://developer.android.com/reference/android/content/pm/PackageManager#isAutoRevokeWhitelisted()。我尝试对此进行测试,但即使我打开或关闭设置,api 总是返回 false。想知道是否还有其他人遇到过这个问题。
我检查了日志,我可以看到一些日志,这让我觉得即使在打开选项后它实际上并没有被添加到白名单中
2020-08-14 03:04:26.002 7005-7047/? I/AppPermissionGroupsViewModel: sessionId 5928824040472035289 setting auto revoke enabled to true forcom.abc.xyz UserHandle{0}
2020-08-14 03:04:26.007 864-3020/? D/audio_hw_primary: enable_snd_device: snd_device(2: speaker)
2020-08-14 03:04:26.007 7005-7283/? W/AutoRevokePermissions: Error carrier privileged status for com.abc.xyz: -1
2020-08-14 03:04:26.007 864-3020/? D/audio_route: Apply path: speaker
2020-08-14 03:04:26.007 7005-7283/? I/AutoRevokePermissions: Parsed teamfood setting value: null
2020-08-14 03:04:26.007 7005-7283/? I/chatty: uid=10187(com.google.android.permissioncontroller) pool-2-thread-7 identical 1 line
2020-08-14 03:04:26.007 7005-7283/? I/AutoRevokePermissions: Parsed teamfood setting value: null