V2EX = way to explore
V2EX 是一个关于分享和探索的地方
Sign Up Now
For Existing Member  Sign In
estk
V2EX  ›  Android

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

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

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

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