旧版哔哩哔哩 App 会在有存储权限的情况下在模拟 SD 卡下包名文件夹内写入environment.pub
和environment.priv
两个文件,均为二进制文件,无法用文本流打开。这种行为可以用拒绝存储权限来阻止。
然而自从哔哩哔哩的 Target SDK 版本升级到 30 后,哔哩哔哩 App 会在模拟 SD 卡下Documents
目录内写入environment.pub
,并在Documents
目录下创建一个数字命名的目录并在其中写入environment.pub
和environment.priv
两个文件。这些行为无法被阻止。
找了一堆安卓开发者文档也没有找到Documents
目录的具体说明,也不知道应用是否有权访问其他用户在Documents
下创建的文件,有没有懂安卓开发的 V 友说一下。
1
vmebeh 2021-05-20 08:53:57 +08:00 via iPhone
删了文件建个同名文件夹看行不行
|
2
ho121 2021-05-20 08:55:17 +08:00
谷歌政策在这里 https://developer.android.com/about/versions/11/privacy/storage 当然只限制上架 Google Play 的应用。如果是国内,还是比较随意的。
|
3
brMu 2021-05-20 09:17:20 +08:00
把存储权限关了就可以了
|
4
yunfeng17 2021-05-20 11:15:26 +08:00 via iPhone
了解
|
5
janus77 2021-05-20 11:21:28 +08:00 via iPhone
这个目录就是共享用的,估计是做统计和追踪用,把储存权限禁用就行
|
7
yujiang 2021-05-20 13:11:29 +08:00 via Android
看起来像极光 pushSDK 的流氓行为
|
8
iminto 2021-05-20 13:34:10 +08:00
|
9
okakuyang 2021-05-20 13:35:27 +08:00
Documents 目录就是放文档类型文件的,就像 Download 一样,高版本安卓不需要申请权限也能写入文件。
“请勿为搭载 Android 10 或更高版本的设备不必要地请求存储相关权限。您的应用可以提供明确定义的媒体集合,包括 MediaStore.Downloads 集合,而无需请求任何存储相关权限。例如,如果您正在开发一款相机应用,您无需请求存储相关权限,因为您的应用拥有您将写入媒体库的图片。” |
10
delpo 2021-05-20 17:54:47 +08:00
AOSP Android 11 + play 版 bilibili 复现成功,没有给 app 存储权限,不过我的情况是它会在 Documents 目录下创建四个以数字为名字的文件夹,文件夹里没有文件,数字似乎是随机的,看着像是追踪 id
因为 bilibili 的 target api 是 30,已经强制开启分区存储了,其他 app 没有读取外部存储权限的话应该是没有办法直接读取这几个文件夹的,但是根据官方文档,可以通过 fileprovider 临时授权其他 app 使用 目前还没有发现其他 app 有类似的行为,如果有新发现的可以贴一下 |
11
dingwen07 OP @delpo #10 对,是还会有几个文件夹,但是只有一个里面有内容。理论上确实不会被其他应用访问,而且卸载重装哔哩哔哩后应该也不会再有权限访问。Documents UI 是很明显的,问题应该不大。所以完全不知道哔哩哔哩在干啥
|
12
whenov 2021-09-28 16:06:05 +08:00
看来即便所有 app 都迁移到 Target API 30,也还是需要装 Storage Isolation
|