哔哩哔哩 Android 会在每次启动时往 Documents 目录下写入文件 - V2EX
V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
dingwen07
V2EX    分享发现

哔哩哔哩 Android 会在每次启动时往 Documents 目录下写入文件

  •  
  •   dingwen07 2021-05-20 07:07:09 +08:00 3403 次点击
    这是一个创建于 1608 天前的主题,其中的信息可能已经有所发展或是发改变。

    旧版哔哩哔哩 App 会在有存储权限的情况下在模拟 SD 卡下包名文件夹内写入environment.pubenvironment.priv两个文件,均为二进制文件,无法用文本流打开。这种行为可以用拒绝存储权限来阻止。

    然而自从哔哩哔哩的 Target SDK 版本升级到 30 后,哔哩哔哩 App 会在模拟 SD 卡下Documents目录内写入environment.pub,并在Documents目录下创建一个数字命名的目录并在其中写入environment.pubenvironment.priv两个文件。这些行为无法被阻止。

    找了一堆安卓开发者文档也没有找到Documents目录的具体说明,也不知道应用是否有权访问其他用户在Documents下创建的文件,有没有懂安卓开发的 V 友说一下。

    12 条回复    2021-09-28 16:06:05 +08:00
    vmebeh
        1
    vmebeh  
       2021-05-20 08:53:57 +08:00 via iPhone
    删了文件建个同名文件夹看行不行
    ho121
        2
    ho121  
       2021-05-20 08:55:17 +08:00
    谷歌政策在这里 https://developer.android.com/about/versions/11/privacy/storage 当然只限制上架 Google Play 的应用。如果是国内,还是比较随意的。
    brMu
        3
    brMu  
       2021-05-20 09:17:20 +08:00
    把存储权限关了就可以了
    yunfeng17
        4
    yunfeng17  
       2021-05-20 11:15:26 +08:00 via iPhone
    了解
    rb6221
        5
    rb6221  
       2021-05-20 11:21:28 +08:00 via iPhone
    这个目录就是共享用的,估计是做统计和追踪用,把储存权限禁用就行
    dingwen07
        6
    dingwen07  
    OP
       2021-05-20 11:27:43 +08:00 via iPhone
    @janus77 #5 存储权限禁用了也能写
    yujiang
        7
    yujiang  
       2021-05-20 13:11:29 +08:00 via Android
    看起来像极光 pushSDK 的流氓行为
    iminto
        8
    iminto  
       2021-05-20 13:34:10 +08:00
    类似这个帖子 t/776559
    okakuyang
        9
    okakuyang  
       2021-05-20 13:35:27 +08:00
    Documents 目录就是放文档类型文件的,就像 Download 一样,高版本安卓不需要申请权限也能写入文件。
    “请勿为搭载 Android 10 或更高版本的设备不必要地请求存储相关权限。您的应用可以提供明确定义的媒体集合,包括 MediaStore.Downloads 集合,而无需请求任何存储相关权限。例如,如果您正在开发一款相机应用,您无需请求存储相关权限,因为您的应用拥有您将写入媒体库的图片。”
    delpo
        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 有类似的行为,如果有新发现的可以贴一下
    dingwen07
        11
    dingwen07  
    OP
       2021-05-20 18:47:53 +08:00 via iPhone
    @delpo #10 对,是还会有几个文件夹,但是只有一个里面有内容。理论上确实不会被其他应用访问,而且卸载重装哔哩哔哩后应该也不会再有权限访问。Documents UI 是很明显的,问题应该不大。所以完全不知道哔哩哔哩在干啥
    whenov
        12
    whenov  
       2021-09-28 16:06:05 +08:00
    看来即便所有 app 都迁移到 Target API 30,也还是需要装 Storage Isolation
    关于     帮助文档     自助推广系统     博客     API     FAQ     Solana     3630 人在线   最高记录 6679     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 31ms UTC 10:33 PVG 18:33 LAX 03:33 JFK 06:33
    Do have faith in what you're doing.
    ubao snddm index pchome yahoo rakuten mypaper meadowduck bidyahoo youbao zxmzxm asda bnvcg cvbfg dfscv mmhjk xxddc yybgb zznbn ccubao uaitu acv GXCV ET GDG YH FG BCVB FJFH CBRE CBC GDG ET54 WRWR RWER WREW WRWER RWER SDG EW SF DSFSF fbbs ubao fhd dfg ewr dg df ewwr ewwr et ruyut utut dfg fgd gdfgt etg dfgt dfgd ert4 gd fgg wr 235 wer3 we vsdf sdf gdf ert xcv sdf rwer hfd dfg cvb rwf afb dfh jgh bmn lgh rty gfds cxv xcv xcs vdas fdf fgd cv sdf tert sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf sdf shasha9178 shasha9178 shasha9178 shasha9178 shasha9178 liflif2 liflif2 liflif2 liflif2 liflif2 liblib3 liblib3 liblib3 liblib3 liblib3 zhazha444 zhazha444 zhazha444 zhazha444 zhazha444 dende5 dende denden denden2 denden21 fenfen9 fenf619 fen619 fenfe9 fe619 sdf sdf sdf sdf sdf zhazh90 zhazh0 zhaa50 zha90 zh590 zho zhoz zhozh zhozho zhozho2 lislis lls95 lili95 lils5 liss9 sdf0ty987 sdft876 sdft9876 sdf09876 sd0t9876 sdf0ty98 sdf0976 sdf0ty986 sdf0ty96 sdf0t76 sdf0876 df0ty98 sf0t876 sd0ty76 sdy76 sdf76 sdf0t76 sdf0ty9 sdf0ty98 sdf0ty987 sdf0ty98 sdf6676 sdf876 sd876 sd876 sdf6 sdf6 sdf9876 sdf0t sdf06 sdf0ty9776 sdf0ty9776 sdf0ty76 sdf8876 sdf0t sd6 sdf06 s688876 sd688 sdf86