目录:
隐私和安全性将成为Android Q的主要关注点。这对每个用户都是一件好事,特别是当许多变更不需要我们采取行动时。 安全专家担心我们手机的安全性意味着我们可以像往常一样继续使用它们,每个人都会赢,除了潜在的黑客或诈骗者。 但是Android的基本功能的一个重大变化 - 在任何应用程序之间共享您的文件 - 正在发生重大变化,这将导致大量的应用程序开发人员反对:Scoped Storage。
Scoped存储如何工作
在访问文件时,Android曾经像其他任何桌面操作系统一样工作; 文档,照片,音乐或您希望存储在设备上的任何其他内容都可以打开任何其他应用程序。 你说应用程序在你安装它的时候可以做到这一点,而且它就是这样做了。 使用应用程序的本机UI,您可以浏览文件系统并查看所有公共文件。
借助Android 4.4 KitKat,Google开始对应用程序如何访问其不拥有的文件进行更改和添加限制,并且通过Android 5.1,实施了存储访问框架。 这为应用程序提供了一种使用Android API访问其他文件夹中的文件的方法,而不是使用标准的编程文件操作。 有用。 这是缓慢且相当不受欢迎的,但现在已经可以使用,现在几乎每个需要这种全局访问的应用程序的开发人员都至少尝试过根据他们的需求来确定它是否合适。
使用Android Q的Scoped Storage,事情既有限制性,也更容易同时进行。 兼容的应用程序具有自己的面向用户数据的文件夹。 应用程序已经有一个私有的沙盒文件夹,用于存储所需的文件,这对任何其他应用程序都无法使用。 Scoped Storage可以为应用程序创建的文件创建第二个文件夹,因为我们使用它并告诉它创建它们。 比如像录音机这样的应用程序; 它需要某个地方来存储它创建的音频文件。
该应用程序无需读取或写入此文件夹中的任何文件的权限,因此在首次运行文件读取和写入位置时,系统不会提示您授予任何权限。 应用程序还需要获得他们想要访问但不拥有的每个文件夹的权限。
自从Lollipop以来,开发人员已经习惯于使用特定的文件访问方法,但它们非常不受欢迎。
像音乐或图片这样的“共享”文件夹有一个内置的方法来获取访问权限(现在 - 这可能是临时的,而Android Q处于测试阶段),但外部存储上的每个其他文件夹,这是您的免费内部存储和 SD如果你有一张卡,现在需要特定的访问权限。 现在想想一个类似文件管理器的应用程序,以及它如何访问SD卡和内部存储器上的每个文件夹。
需要访问不属于其应用程序的文件夹的开发人员需要使用Storage Access Framework API。 这意味着它需要查询API以查看文件是否存在并获取其设备位置,然后要求用户获得使用它的权限。 这是自Android Lollipop以来推荐的文件访问最佳实践,所以它并不是全新的。 但是使用Android Q,它现在已经严格执行,不再是“可选的”。
为什么要做这个改变?
谷歌提供了两个有效的理由来解决这个问题:安全性和减少剩余的“应用程序混乱”。
在安全方面,这种变化做了一些事情。 首先,它会阻止依赖于您的恶意应用程序授予对敏感数据的访问权限,因为您没有阅读在对话框中看到的内容而只是单击是。 这种情况经常发生,如果只是为了保护罪犯,就需要解决这个问题。 我们都做到了。
它还允许开发人员在您的设备存储上拥有自己的私有空间,而不会在首次运行时要求任何特定权限(再次查看第一个原因)。 没有其他应用程序可以访问它创建的任何文档而没有你说它可以。
改变的原因很好,但改变本身并不受欢迎。
减少app杂乱无需解释。 当您卸载应用程序时, 一旦您授予其权限,它就会丢弃整个设备存储中的文件和文件夹。 足够的这些剩菜会开始影响性能,特别是如果文件使用可能由另一个应用程序重复的通用名称。 例如,如果开发人员构建了一个创建媒体(如相机应用程序或音乐录制器)的应用程序,则他或她可以使用标准媒体文件夹位置存放您创建的内容,以便在卸载应用程序时不会删除它们。
不是一成不变的
Android Q仍处于测试阶段; 这意味着鼓励开发人员安装并提供反馈。 目前,Scoped Storage的反馈不是很好。 甚至有一份请愿书要求Google暂时删除该功能并重新考虑其实施。
开发人员正在使用官方反馈渠道分享他们的挫败感,虽然谷歌有时可能感觉像是一个不可移动的对象,但它正在倾听。 最重要的是,Android是一个应用程序平台,破坏流行的应用程序并不是开发人员想要做的事情。
在关于Scoped Storage的Android Q最终决定之前,事情可能会发生变化。 或者它可以完全删除。 我们知道什么时候才能在2019年秋天看到它。
Android问:你需要知道的一切!