Android Q Beta-强类型权限

时间:2019-04-03 23:16:34

标签: java android kotlin android-manifest android-permissions

我正在使用Android Q SDK测试我的应用程序,并且在重构了某些内容以使其与新的API兼容之后,我陷入了请求某些权限的困境。

在应用清单文件中,我声明了e.x

<uses-permission android:name="android.permission.READ_EXTERNAL_STORAGE" />

使用Android Q SDK进行编译时,它表示已弃用。 查看文档后,他们说:

  

在API级别Q中不推荐使用此常数。   Q中的强类型权限组。

那么,strongly-typed permission是什么?如何以正确的方式声明并从应用程序代码(java或kotlin)中进行请求?或者他们还没有为此提供任何文档,我们应该等待以下消息吗?

Ps:android.permission-group.STORAGE也已被弃用。

1 个答案:

答案 0 :(得分:1)

引用myself

  

现在有三个“强类型”   读取外部存储的权限:

     
      
  • READ_MEDIA_AUDIO
  •   
  • READ_MEDIA_IMAGES
  •   
  • READ_MEDIA_VIDEO
  •   
     

这些是dangerous权限,因此您将以与READ_EXTERNAL_STORAGE相同的方式处理它们。   如果您的应用将targetSdkVersion设置为Q,则可以请求这三个权限,   而且您获得的访问级别与API 28级或更低级别的应用相同   通过在Q设备上请求READ_EXTERNAL_STORAGE获得。那还是很有限的   只能通过MediaStore访问,但这总比没有好。

请注意,此信息是Q Beta 2的最新信息,将来的beta版本可能会改变情况。