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

好像没有办法能够阻止 Android 应用乱改系统音量?

  •  
  •   0x8192dd · 2018-08-10 17:13:37 +08:00 · 11480 次点击
    这是一个创建于 2297 天前的主题,其中的信息可能已经有所发展或是发生改变。

    朋友跟我说有个打车应用为了“保证能够通知到用户”每次播放接单提示音都会把系统音量改到最大,哪怕当前静音,关闭录音和写入系统设置权限都没用,问我有什么办法收拾它。

    然后我发现,调用 AudioManager 修改系统音量好像并不需要什么权限诶……

    也就是说如果一个应用能够改音量,从系统层面没有办法阻止它偷偷改音量造成本来静音的用户被惊扰。

    各位老哥是怎么解决这个问题的?

    19 条回复    2018-08-11 06:33:22 +08:00
    glaucus
        1
    glaucus  
       2018-08-10 17:48:01 +08:00
    以前用 Android 碰到过一个类似的东西,就是任何应用好像都可以随便访问我的剪贴板,最后写了个 Xposed 插件做了简陋的权限管理
    0x8192dd
        2
    0x8192dd  
    OP
       2018-08-10 18:09:43 +08:00
    @glaucus 感觉很多细节的地方权限管理没覆盖到,剪贴板我印象中也是不需要什么权限……
    mikeldy
        3
    mikeldy  
       2018-08-10 18:13:02 +08:00 via iPhone
    这种 app 直接卸载掉
    iwtbauh
        4
    iwtbauh  
       2018-08-10 18:37:17 +08:00 via Android
    appops 应该可以治

    https://i.imgur.com/kxjz6Ma_d.jpg
    iwtbauh
        5
    iwtbauh  
       2018-08-10 18:38:23 +08:00 via Android   ❤️ 1
    appops 应该可以治

    XCG0000
        6
    XCG0000  
       2018-08-10 18:39:46 +08:00
    现在高版本的 android 三方 app 设置静音需要申请权限了
    0x8192dd
        7
    0x8192dd  
    OP
       2018-08-10 19:01:43 +08:00
    @iwtbauh 回去研究研究,感谢
    Trumeet
        8
    Trumeet  
       2018-08-10 19:32:18 +08:00 via Android
    关闭权限都没用?可能是 Bug/黑科技 了吧,建议查一下 AOSP AudioManagerService 侧实现,看一下是不是有鉴权,有的话就是被 ROM 魔改了,去提交 Bug 吧。
    fengleidongxi
        9
    fengleidongxi  
       2018-08-10 19:50:09 +08:00
    @iwtbauh 这是 appopsx 吗?
    SorcererXW
        10
    SorcererXW  
       2018-08-10 19:53:28 +08:00 via Android
    先不管怎么解决,曝光一下这些 app 也行
    0x8192dd
        11
    0x8192dd  
    OP
       2018-08-10 20:54:55 +08:00
    @Trumeet 是压根没有这个权限,WRITE_SYSTEM_SETTINGS 和 RECORD_AUDIO,都不影响音量控制。在权限管理页面你想禁根本无从下手
    0x8192dd
        12
    0x8192dd  
    OP
       2018-08-10 20:59:01 +08:00
    @SorcererXW 滴滴,每周我朋友接顺风车单都能听见一大声“滴滴一下,顺风出行”,据说有一次还是在开会:)
    Trumeet
        13
    Trumeet  
       2018-08-10 22:08:28 +08:00 via Android
    @0x8192dd AudioManager Service 侧有鉴权么
    Trumeet
        14
    Trumeet  
       2018-08-10 22:26:35 +08:00 via Android
    @0x8192dd 如果连权限都没有的话就是 AOSP 缺陷了 qwq
    iwtbauh
        15
    iwtbauh  
       2018-08-10 22:45:47 +08:00 via Android
    @fengleidongxi 恩,是 appopsx,appops 的一个 frontend。
    不想装 appopsx 可以 adb 命令直接运行
    adb shell appops ....
    不过很蛋疼就是了
    lineageos 有隐私防护,那个也是 appops 的 frontend,用 lineageos 也可以用隐私防护
    fengleidongxi
        16
    fengleidongxi  
       2018-08-10 23:28:48 +08:00
    @iwtbauh 你为何选择 appops ?两个有什么本质的区别吗?
    iwtbauh
        17
    iwtbauh  
       2018-08-11 00:11:59 +08:00 via Android   ❤️ 1
    @fengleidongxi
    appops 是 Android 系统自带的功能
    appopsx 只是一个 appops 的前端
    adb appops 命令是一个命令行的 appops 前端
    lineageos 隐私防护也是一个 appops 的前端
    所以他们禁用的权限并没有区别。

    这里用 appopsx 是因为命令行的 appops 并不好用,而且也不能确定对方用的是不是 lineageos
    honeycomb
        18
    honeycomb  
       2018-08-11 06:32:47 +08:00 via Android
    @0x8192dd 用 appops 即可
    honeycomb
        19
    honeycomb  
       2018-08-11 06:33:22 +08:00 via Android   ❤️ 1
    @fengleidongxi 就是这么回事
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   915 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 20ms · UTC 21:43 · PVG 05:43 · LAX 13:43 · JFK 16:43
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.