estk
V2EX  ›  Android

读取手机是否安装某个应用,不需要权限吧?

  •  
  •   estk · Jun 11, 2023 · 13639 views
    This topic created in 1247 days ago, the information mentioned may be changed or developed.

    本人非安卓开发,印象中,好像有个方法,类似于 canOpenUrl("weixin://") 就可以判断你是否装了微信,换个 scheme 就可以判断其它 App

    JFZ
    JFZ
    Jun 11, 2023
    1
    IOS 也有类似调用方法
    estk
    estk
    OP
    Jun 11, 2023
    2
    @jiuhuicinv #1
    所以装了官方 App ,它想知道你有没有装电报,iOS 也跑不掉?
    codehz
    codehz
    Jun 11, 2023
    3
    用不着这么麻烦,直接用 QUERY_ALL_PACKAGES 的权限就能获得完整列表
    estk
    estk
    OP
    Jun 11, 2023
    4
    @codehz #3
    这个权限可以在 setting 里用户手动关闭吧,不够强制
    JFZ
    JFZ
    Jun 12, 2023
    5
    @estk 我只是说 IOS 有 scheme 这种功能 至于能不能用于检测装了什么软件就不得而知了
    bao3
    bao3
    Jun 12, 2023
    6
    可以,用 URL scheme 是合法的,只是会不会涉及隐私,这个……
    starlin
    starlin
    Jun 12, 2023
    7
    第一次听说,安装非法应用导致封手机号的
    AoEiuV020JP
    AoEiuV020JP
    Jun 12, 2023
    8
    讲道理仅仅是安装,并不能做为违规违法的证据,
    尤其检测只是 scheme 或者包名,甚至不知道检测到的是不是只是其他碰巧同名的 app ,
    啥也没干的情况就惩罚,放哪里都说不通,
    DosLee
    DosLee
    Jun 12, 2023
    9
    这操作真是 6 ,看完直接去应用管理里删除数据并卸载了运营商软件
    estk
    estk
    OP
    Jun 12, 2023
    10
    @AoEiuV020JP #8
    确实啊,我们 ZF 是个讲道理的 ZF ,不会乱来的
    ysc3839
    ysc3839
    Jun 12, 2023 via Android❤️2
    11
    @codehz @estk AOSP 没有“读取应用列表”权限的开关,应用请求了就能使用。
    而且就算用的是国产系统,拒绝了“读取应用列表”权限,或者用其他 Xposed 等工具禁止读取应用列表,仍然可以通过读取 /data/data/包名 的方式来探测某个应用是否安装,如果应用有安装,会返回 Permission denied ,否则会返回 No such file or directory
    shinession
    shinession
    Jun 12, 2023
    12
    买了国产手机, 出国后就不能用了?
    About   ·   Help   ·   Advertise   ·   Blog   ·   API   ·   FAQ   ·   Privacy   ·   Solana   ·   2258 Online   Highest 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 37ms · UTC 00:19 · PVG 08:19 · LAX 16:19 · JFK 19:19
    ♥ Do have faith in what you're doing.