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

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

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

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

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

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

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

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

    https://i.imgur.com/kxjz6Ma_d.jpg
        5
    iwtbauh   74 天前 via Android   ♥ 1
    appops 应该可以治

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

    这里用 appopsx 是因为命令行的 appops 并不好用,而且也不能确定对方用的是不是 lineageos
        18
    honeycomb   74 天前 via Android
    @0x8192dd 用 appops 即可
        19
    honeycomb   74 天前 via Android   ♥ 1
    @fengleidongxi 就是这么回事
    关于   ·   FAQ   ·   API   ·   我们的愿景   ·   广告投放   ·   感谢   ·   实用小工具   ·   3528 人在线   最高记录 3762   ·  
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.1 · 18ms · UTC 02:36 · PVG 10:36 · LAX 19:36 · JFK 22:36
    ♥ Do have faith in what you're doing.
    沪ICP备16043287号-1