V2EX = way to explore
V2EX 是一个关于分享和探索的地方
现在注册
已注册用户请  登录
fox0001
V2EX  ›  Android

[交流]Android 13 与国产 App 乱写 sdcard 目录

  •  1
     
  •   fox0001 · 342 天前 · 7060 次点击
    这是一个创建于 342 天前的主题,其中的信息可能已经有所发展或是发生改变。

    最近刷上 crDroid 9 ,即 Android 13 ,发现几乎没有 App 乱写/sdcard目录了。兴奋地以为这问题已根治了,稍微研究了一下,才发现不是。但是向好的方向发展。

    1. 国产 App 开始避免直接申请“文件读写权限”,起码大厂有这个趋势。
    2. 大部分可以在无授权“文件读写权限”的情况下,可以正常使用。起码日常使用吧……

    测试过以下 App:

    • 微信
      • 安装来自酷安,最新版。
      • 早就修正了乱写“/sdcard”目录的问题,但不影响它浪费手机存储空间。
      • 只申请“照片和视频权限”,点了“下载”的图片视频会写入“/sdcard/Pictures/WeiXin”文件夹。
    • 淘宝
      • 安装来自 Google Play ,最新版。
      • 权限列表没有“文件读写权限”,只有“音乐和音频”、“照片和视频”。
      • 发现手机淘宝网页版已经没有强制跳转 App ,只进行购物的话,可以不装 App 。
      • 另外,支付宝和闲鱼,也是 Google Play 最新版,也只有“照片和视频”权限,且可以不授权。
    • 阿里云盘
      • 安装来自官网,最新版
      • 可以无“文件”权限运行。但这是网盘服务,需要下载文件或同步本地文件之类。
      • 授予“文件”权限后,创建了“AliYunPan”、“.DataStorage”、“.UTSystemConfig”、“.vdedir”、“.vivo”、“alipay”、“umeng_cache”等目录。其中“AliYunPan”是用于保存云盘下载的文件,可认为是正常操作。
      • 安装“工作空间”内运行,下载文件会提示失败,不知道是不是识别了路径以“/storage/emulated/10/AliYunPan”开头而不下载。错误日志有提示下载路径为“/storage/emulated/10/AliYunPan”。
    • 中国农业银行
      • 安装来自酷安,最新版。
      • 可以无“文件”权限运行。
      • 授予“文件”权限后,创建了“.DataStorage”、“.UTSystemConfig”、“Android/obj”、“bwton”目录。
      • 另外,使用“工作空间”(使用 Shelter )运行会闪退。
    30 条回复    2023-05-03 17:28:38 +08:00
    alne
        1
    alne  
       342 天前
    使用存储空间隔离后,基本没发现侧漏现象。
    前几个安卓版本倒是经常发现侧漏现象,说明系统带的 app 也是随地大小便
    CharlesGray
        2
    CharlesGray  
       342 天前
    我的微信仍然是同时申请文件和图片权限,两个绑在一起的,关掉一个另外一个也会被关掉
    berchtesgaden
        3
    berchtesgaden  
       342 天前
    一个权限都没给,使用也没啥大问题
    fox0001
        4
    fox0001  
    OP
       342 天前 via Android
    @CharlesGray #2 我的微信版本是 8.0.30 ,不知道是不是新版对权限优化了
    xubingok
        5
    xubingok  
       342 天前
    酷安不知道扒的哪个市场的 apk.
    至少用 googleplay 的版本来调查毫无意义...
    向 googleplay 发布的 apk 规范多了.
    cassiaesemen
        6
    cassiaesemen  
       342 天前
    因为合规原因,乱写目录有改善,现在我使用 Android 最大的痛点就是推送。
    Alexonx
        7
    Alexonx  
       342 天前
    @xubingok #5 酷安一般是应用宝,可以算作国内渠道.
    但是确实 Play 版本没有啥对比的意义.
    wy315700
        8
    wy315700  
       342 天前
    都是空间不足才有的强迫症。
    只要空间足够就不怕乱写了。

    等他写满了换个手机就是了。
    fox0001
        9
    fox0001  
    OP
       342 天前 via Android
    @xubingok #5
    @Alexonx #7
    对,Google Play 上架有限制。没有限制的话,也是继续放飞自我…
    fox0001
        10
    fox0001  
    OP
       342 天前 via Android
    @wy315700 #8 我的话,应该是纯粹的强迫症了。目前手机空间只用了不到一半。
    janus77
        11
    janus77  
       342 天前
    你这个没用代表性啊……
    微信,算是流氓里面比较克制的了
    x 宝,下的是 google play 版本,众所周知很多厂在·google play 和国内发布的其实是两个版本
    阿里云盘,虽然是互联网大厂,但是这个 app 出的比较新,没有历史包袱,所以也没有代表性
    农行,根本不是互联网厂
    whileFalse
        12
    whileFalse  
       342 天前
    @wy315700 主要 sd 卡根目录一堆垃圾看着烦
    CharlesGray
        13
    CharlesGray  
       342 天前
    @whileFalse 我是 8.0.33 啊,「文件和媒体」「音乐和音频」「照片和视频」这三个是绑在一起的
    zagfai
        14
    zagfai  
       342 天前
    我也是 8033 ,也是全写权限。可能和具体系统有关吧
    wy315700
        15
    wy315700  
       342 天前
    @whileFalse
    反正要占用那么多空间,写在哪不是写呢。
    whileFalse
        16
    whileFalse  
       342 天前
    @wy315700 要说的话其实 linux / mac 的 ~ 目录也没干净到哪儿去,但就是觉得不爽。
    fox0001
        17
    fox0001  
    OP
       342 天前 via Android
    @zagfai #14
    @CharlesGray #13
    不好意思,我的微信可能是 Google Play 版…版本号是 8.0.30
    RikkaW
        18
    RikkaW  
       342 天前   ❤️ 2
    你好,并没有往好的地方发展。

    对于 Android 10 或更高版本,Android 系统允许符合条件的应用在标准文件夹中写入文件而<b>无需任何权限</b>(不论应用是否声明了、用户是否允许了存储相关的权限)。

    这意味着不论您如何设置权限,应用总是可以向标准文件夹写入文件。唯有修改其他应用创建的文件仍需要权限。

    * 标准文件夹是指 DCIM 、Pictures 、Download 等一系列系统规定的文件夹。
    * 符合条件的应用是指目标 API 是 30 或以上,或者目标 API 是 29 且适配了分区存储的应用。

    综上所述,除了目标 API 是 30 或以上的应用不能在 /sdcard 下创建非标准的文件夹和文件是一个好的发展,其他方面往坏的方向发展。
    CharlesGray
        19
    CharlesGray  
       342 天前
    @fox0001 有没有什么办法能用 play 商店重新下载安装一份更老版本的微信😭,想从国内的.33 换成 play 商店的.30
    fox0001
        20
    fox0001  
    OP
       342 天前 via Android
    @CharlesGray #19 卸载当前版本,再安装 Play 版。如果有保存聊天记录的要求,可以使用微信自带的“聊天记录迁移与备份”功能。
    yulgang
        21
    yulgang  
       342 天前
    如果你给微信通讯录权限,他还会浪费你的流量。😁
    guazila
        22
    guazila  
       342 天前
    补充几个我用过的 app:
    QQ 邮箱不给储存权限可以正常使用,但是无法下载附件。
    狗东不给任何权限可以正常使用。
    QQ 音乐不给储存权限可以正常使用,但是无法播放本地歌曲。
    云闪付、工行、招行的 app 不给任何权限可以正常使用。
    支付宝不给任何权限可以正常使用。

    高德地图不给储存、定位、电话权限就不给你用。求推荐一个替代的导航 app 。
    CharlesGray
        23
    CharlesGray  
       342 天前
    @fox0001 我换到了 play 版,「音乐和音频」「照片和视频」这两个权限还是绑在一起的,「文件和媒体」倒是没了
    alne
        24
    alne  
       342 天前
    @xubingok #5 酷安基本是华为应用市场和应用宝
    maleclub
        25
    maleclub  
       342 天前
    存储空间隔离,安卓 10-13 都可以解决你的需求。稳定用了几年,还不错。
    AoEiuV020CN
        26
    AoEiuV020CN  
       342 天前 via Android
    我公司 app 也不在 sdcard 乱写了,
    直接原因是上架要求非必要不申请文件权限,
    只能改成写入私有目录,必要时再导出了,
    yuyanstation528
        27
    yuyanstation528  
       341 天前 via iPhone
    @RikkaW
    本来 android11 以上是启用强制分区存储,跟你 targetsdk 没有任何关系。但大部分国产手机的 os 完全没有启用分区存储功能,依旧可以随意扫描其他应用程序的私有目录。
    Musong
        28
    Musong  
       340 天前
    我超 是 RikkaW
    eyeshuaji
        29
    eyeshuaji  
       330 天前
    想问下,OP 是用什么方法知道这些软件创建了什么文件的啊?
    fox0001
        30
    fox0001  
    OP
       330 天前 via Android
    @eyeshuaji #29 全部冻结了,然后逐个试试
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   我们的愿景   ·   实用小工具   ·   1159 人在线   最高记录 6543   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 27ms · UTC 18:31 · PVG 02:31 · LAX 11:31 · JFK 14:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.