APP下载

Google释出Android新的档案存取权限控制Scoped Storage实施细节

消息来源:baojiabao.com 作者: 发布时间:2024-05-20

报价宝综合消息Google释出Android新的档案存取权限控制Scoped Storage实施细节

Google在其最新的行动装置操作系统Android Q增加Scoped Storage功能,将开始更严格地限制应用程序存取装置外部储存中的档案,而为了即将发布的Android Q第三测试版,Google说明Scoped Storage的实施细节以及最佳作法。

Android Q为了增加其安全性,在其核心加入了应用程序沙盒的概念,只要是未经授权的应用程序,都只能在沙盒中执行,Android Q会为每个应用程序都创建独立的储存沙盒,限制应用程序互相存取那些储存在外部储存的档案,要求应用程序在获得额外授权之后,才能存取照片、影片或是音讯等共享档案。由于Scoped Storage功能的加入,赋予Android Q具有更细致的控制媒体存取权限的能力。

Scoped Storage要求开发者分开应用程序共享以及内部使用的档案,当应用程序处理用户预设与其他应用程序共享,并在移除应用程序后还能使用的档案时,应该使用MediaStore API。音讯、影片与图片常用的媒体档案,在Android Q中被归类为特定的集合,开发者可以将这些档案储存在新的下载集合(Downloads Collection)中,应用程序要存取下载集合中的档案,则必须呼叫系统的选择器。

而应用程序要储存自己内部使用,不希望与其他应用程序共享的档案,开发者可以选择将这些档案储存在特定套件的目录中,Google提到,这个做法不只可以保持档案整齐,而且在系统卸载应用程序的时候,也能顺便将这些档案清理干净。

对于使用MediaStore储存的档案,应用程序存取自己的档案不需要任何授权,但要使用其他应用程序共享的媒体,则需要获得额外的权限,而且当应用程序卸载并重新安装后,则需要重新向使用者请求权限,才能够使用先前该应用程序储存的档案。

对于即将发布的Android Q第三预览版,Google表示,为Android 9 Pie开发的应用程序,也就是使用API等级28或是更低等级的应用程序,预设还不会受到任何影响,其储存行为仍然跟之前的Android版本相同,但是当应用程序更新使用Scoped Storage之后,开发者可以使用新的Manifest属性,在Android Q装置上启用新的储存行为,Google预告,明年任何SDK等级的应用程序,即便是使用API等级28或是更低等级的应用程序,都将强制应用Scoped Storage,开发者现在就应该提早测试应对。

2019-04-30 11:45:00

相关文章