# 介绍

在介绍“存储重定向”前,请你先看看你是否有下面的问题(“存储重定向”就是为解决这些问题而生)。

  • 当你打开你的文件管理器或是将手机作为 U 盘使用时,你是否发现其中有大量你不知道的文件夹,你很难在其中找到自己想要找到的文件;你是否想知道这些文件由什么应用建立,是否可以删除。
例子
一个例子
  • 当一个应用请求存储权限时,你是否希望它只可以访问特定的文件。

# 为什么会这样呢?

要回答这个问题,我们首先需要介绍 Android 系统的存储空间及存储权限。

  • 共享存储空间(需要存储权限): 保存照片、文档等用户文件。
  • 应用专用存储空间(不需要权限): 保存应用自己的数据。只有应用自身可以使用且卸载后会被删除。

由此你会发现,Android 系统中的存储权限设计过于简单〔1〕,用户只可以选择是否授予整个共享存储空间的权限。而用户如果需要使用“发送图片”这样的功能就只能选择授予权限。

同时你还会发现一些“需要存储权限来保存数据”的应用实际是在欺骗你,它们实际为了避免卸载后被删除。注意,这是错误的〔2〕。一个常见的目的是,持久化和共享用于追踪用户的标识,这在来自中国大陆等用户隐私意识淡薄的地区的应用中非常常见。

〔1〕 事实上,Android 系统提供了其他使用存储空间的方法,但鲜有应用使用。

〔2〕 用户卸载意味着用户不再想要使用,除了用户主动保存的文件之外的文件都应该被删除。这么做会带来一些永远不会被删除的文件占用存储空间。

# “存储重定向”

“存储重定向”提供“存储空间隔离”功能,你可以为指定的应用启用隔离功能。

启用隔离后:

  • 应用不再可以任意使用共享存储空间,你可以指定其可以使用的文件夹。
  • 应用建立的文件在卸载后会被删除,但有用的文件会保存你指定的文件夹。

关于如何使用“存储重定向”应用,请阅读后续的文档。

# 需求

  • Android 6.0 及以上
  • root
  • Magisk(被增强模式需要)