android 沙盒存储,谷歌手软了:不再强制在Android Q采用隔离存储沙盒机制

IT之家4月26日消息 在Android Q的首个Beta版中,谷歌推出了一个隐藏的、激进的隔离存储沙盒机制,名为“Scoped Storage”。谷歌此举改变了应用访问设备本地文件的方式,意在限制应用对用户隐私的窥探。

在第二个Beta版本中,谷歌做出了一个激进的举动,将这一沙盒机制设置为默认开启。在该版本中,许多应用纷纷“中枪”,轻则无法在本地存储目录中肆意新建文件夹,重则几乎无法访问本地存储文件。

具体地说,在许多应用实例中,运行Android Q的设备若启用了此模式,许多自建图片文件选择器的应用将无法正常读取本机的图片文件。

68370daef67c1e13899ba8726eb94421.png

或许正是因为此举过于激进,谷歌于25日在一篇博文中表示,将不再在Android Q的下一个Beta版本(Beta 3)中强制开启Scoped Storage,给开发人员提供更多时间来适应新的API。

在此之前,为了使旧版的应用能够正常工作,谷歌预留了兼容性模式,只提供给以下两种应用使用:以Android 9(API级别28)或更低版本为目标平台的应用;

安装在从Android 9升级到Android Q的设备上的应用。

现在谷歌做出了改变,宣布将在Android Q的最终版本中提供兼容性模式。这意味着,谷歌至少要到Android R上才会完整地启用这一模式。不过,目标API为Android Q(API级别29)的应用,仍然需要采用这套全新的机制。

扩展资料:在运行Android Q Beta 1的设备上,用户可以通过以下ADB命令行开启隔离存储沙盒。adb shell sm set-isolated-storage on成功运行此命令后,设备将重启,用户可以通过以下ADB命令行验证;若收到回应为“true”,即意味着此机制已经开启。adb shell getprop sys.isolated_storage_snapshot同样的,在运行Android Q Beta 2的设备上,用户可以通过以下ADB命令行关闭隔离存储沙盒。adb shell sm set-isolated-storage off

如果你是一位开发者,或者对此有兴趣,可以点此阅读谷歌的相关支持文档(中文)。

你可能感兴趣的:(android,沙盒存储)