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

为何在 app 里拍个头像,光有摄像头权限还不行,还非得开放文件系统读写权限呢?

  •  
  •   pq · 2017-11-05 22:51:28 +08:00 · 10491 次点击
    这是一个创建于 2607 天前的主题,其中的信息可能已经有所发展或是发生改变。

    每个 app 不都在 sd 卡限定的目录内有读写权限的么?完全可以用来临时处理拍照的图片呀。这些流氓 app 就是借此逼用户向它们开放整个 sd 卡的读写,本来以前可以忽略头像的,最近突然强制要求设置头像,我想就随便拍个键盘什么的当头像吧,没想到光开放了摄像头权限后根本不行。。。

    13 条回复    2017-11-26 12:31:41 +08:00
    honeycomb
        1
    honeycomb  
       2017-11-05 23:00:35 +08:00   ❤️ 3
    应用不肯:
    1:调用系统拍照 app,如此无需包括摄像头在内的任何权限
    2:拍了照不肯存入应用自身目录(data 分区或者 sdcard 分区里该应用专用的)

    往往说明该应用有疾病,需要治疗,特别是那些并不以拍照 /扫描为主要目的的应用。
    pq
        2
    pq  
    OP
       2017-11-05 23:20:43 +08:00
    @honeycomb 嗯,我也觉得肯定是不怀好意的,好在同类 app 很多,一拨又一拨的新鲜货,所以,干掉它再换一个不是什么困难的抉择。。。
    karia
        3
    karia  
       2017-11-06 09:27:29 +08:00   ❤️ 2
    magisk + AppOps 给空数据,专治不给权限就不运行的流氓

    遇到过唯一一个做了反抗的是美图外卖,一定要电话+定位(起码粗略)+存储(读写)
    外卖软件要 FS 读写想干啥,甚至定位其实我也不想给,手动输入挺好的 :)
    pq
        4
    pq  
    OP
       2017-11-06 13:32:18 +08:00   ❤️ 1
    @karia 这对我遇到的情况是没用的。因为定义不了头像就没法进入 app,而要成功地自定义头像,要么开放摄像头和文件系统权限来拍照,要么开放文件系统权限后选择图片文件,反正就是逼人开放文件系统,你返回个空数据,照样还是无法定义头像。

    这种 app 之所以逼人开放文件系统,我猜主要还是绑定了一堆大厂的流氓插件(或叫 SDK ),它们要读写文件系统才可以正常运作,最常见的比如阿里系的,好多 app 运行后都会在 sd 卡上生成许多个阿里系有关的目录,尽管没有装任何阿里的 app。。。
    pq
        5
    pq  
    OP
       2017-11-06 13:35:14 +08:00
    @karia 我 sd 卡上本来也没任何敏感数据,但就是很讨厌那一堆乱七八糟的目录,我有洁癖嘛,所以,对国产 app 是从来不开放文件系统权限的,不给用就删除它。
    caixiangyu17
        6
    caixiangyu17  
       2017-11-06 13:49:52 +08:00
    因为懒得做这个功能,用第三方的控件,控件一般都有缓存的功能
    pq
        7
    pq  
    OP
       2017-11-06 14:01:06 +08:00
    @caixiangyu17 也不知是些什么功能要用到第三方控件,说了半天,我说的这 app 其实就是个常见的直播 app,看妹子用的,基本都是一个模子出来的,同类的 app,我除了电话权限(因为是 wifi 版的平板,电话权限无所谓),一律不给,却可以照常使用,除了不能自定义头像外,没有任何功能缺失,哦,可能还有支付功能不行,不过我从来不刷礼物,没试过充值。。。:D
    caixiangyu17
        8
    caixiangyu17  
       2017-11-06 14:35:21 +08:00   ❤️ 2
    @pq 就是添加头像功能呀,什么从 sd 卡里面选取图片,什么拍照后处理,这些要自己写都挺麻烦的还得写界面,直接用第三方控件省很多事情,而一般第三方控件都给你做了好多功能,就需要读写权限了。安卓自从有了 gradle,随便引个第三方控件实在是太方便了,所以现在 app 各种大体积运行慢有时候就是滥用第三方控件导致的,经常会杀鸡引个牛刀
    pq
        9
    pq  
    OP
       2017-11-06 15:00:43 +08:00
    @caixiangyu17 原来如此!说实在的,作为一个直播 app 的纯观众,头像真是可有可无的,为这么个没用的功能开放那么多权限,真不值得。。。
    tcxdawn
        10
    tcxdawn  
       2017-11-08 17:15:16 +08:00
    并不是不怀好意,还有可能是例如分享图片的功能,文件放在应用自身目录应该是分享不出去的,需要把图片放到 sd 卡中。
    ps:恩..如果可以的话,是我技术渣,顺便告诉我下怎么处理,我也不是很想让用户给这个权限
    nn574204775
        11
    nn574204775  
       2017-11-09 08:48:57 +08:00 via Android
    @tcxdawn 用 FileProvider 但是 QQ 这种辣鸡会不支持(但是还是有办法的
    nn574204775
        12
    nn574204775  
       2017-11-09 08:49:25 +08:00 via Android
    @caixiangyu17 _(:з」∠)_ 你这么乱说合适吗
    des
        13
    des  
       2017-11-26 12:31:41 +08:00 via Android
    @karia 让我告诉你,为啥要存储权限。
    你去 sd 卡目录的 Android 目录看看带点开头的文件就知道了
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   2997 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 14:34 · PVG 22:34 · LAX 06:34 · JFK 09:34
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.