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

有办法在安卓机上直接跑 adb shell 命令吗?

  •  
  •   lidlesseye11 · 2020-08-30 13:00:40 +08:00 · 13493 次点击
    这是一个创建于 1551 天前的主题,其中的信息可能已经有所发展或是发生改变。
    故事是这样的,坑爹一加的三段式开关(一个切换响铃 /振动 /静音模式的实体按键)失灵了。。怎么拨都是响铃模式。
    百度出来一个解决方法 https://baijiahao.baidu.com/s?id=1637558102625721636
    说是手机连电脑运行以下命令可以改
    adb shell settings put global three_Key_mode 3
    (其实还没试过行不行。。)
    但是连电脑也太麻烦了,有什么办法可以直接在手机上跑这样的命令吗?
    或者有没有可能写个 apk 装手机上用来改这个值。。
    再或者有没有加友知道一加 5 能刷个啥能在设置里改模式的系统吗。。。这氧 OS 只能硬件改也太沙雕了。。。
    28 条回复    2020-08-31 18:44:31 +08:00
    joyhub2140
        1
    joyhub2140  
       2020-08-30 13:23:26 +08:00 via Android
    手机里运行命令行要 root 吧,root 掉的手机我是不敢拿来日常使用的了。
    fantasylidong
        2
    fantasylidong  
       2020-08-30 13:25:24 +08:00 via Android   ❤️ 3
    @joyhub2140 不 root 我都不用。。。
    sarvatathagata
        3
    sarvatathagata  
       2020-08-30 13:29:19 +08:00
    termux
    falcon05
        4
    falcon05  
       2020-08-30 13:32:05 +08:00 via iPhone
    BoxTool
    SilencerL
        5
    SilencerL  
       2020-08-30 13:32:29 +08:00 via iPhone
    root 之后装个终端模拟器
    - su
    - settings put global three_Key_mode 3

    不过我试了下,大概是没效果的。
    SilencerL
        6
    SilencerL  
       2020-08-30 13:34:48 +08:00 via iPhone
    。。。刚才是我输错命令了,有这个命令亲测有效果。
    1 静音
    2 震动
    3 响铃
    fenglala
        7
    fenglala  
       2020-08-30 13:35:36 +08:00 via Android
    www 点 52pojie 点 cn/thread-1148594-1-1 点 html
    试试这个,我之前试过可以我 adb 我自己
    fox0001
        8
    fox0001  
       2020-08-30 14:49:00 +08:00 via Android
    为什么不写个 apk 模拟按键?
    WebKit
        9
    WebKit  
       2020-08-30 14:49:48 +08:00 via Android
    @joyhub2140 不 root 得手机有办法用?
    kurisu93
        10
    kurisu93  
       2020-08-30 15:42:36 +08:00
    酷安有个软件好像叫 adb 安装器 可以安装并启动 adb 和 fastboot 环境 配合终端模拟器即可
    sky96111
        11
    sky96111  
       2020-08-30 16:31:46 +08:00
    有 root 可以,没 root 只能网络 adb (氢氧 os 阉割)。用 termux 下载 magisk 仓库里的 adb 加入 path,或者 magisk 仓库搜索 adb 安装模块,在任何终端模拟器输入就行。
    sky96111
        12
    sky96111  
       2020-08-30 16:32:13 +08:00
    @sky96111 其实有 root 直接终端模拟器就行啊
    dadachen1997
        13
    dadachen1997  
       2020-08-30 16:43:38 +08:00
    这个不是系统 bug 吗,报告给一加开发人员啊
    tonghuashuai
        14
    tonghuashuai  
       2020-08-30 16:56:34 +08:00 via iPhone
    tasker 可以,出去 root
    tonghuashuai
        15
    tonghuashuai  
       2020-08-30 16:56:52 +08:00 via iPhone
    啊,sorry 上面写错了,是需要 root
    winzkh
        16
    winzkh  
       2020-08-30 17:29:16 +08:00
    Muniesa
        17
    Muniesa  
       2020-08-30 17:40:53 +08:00 via Android
    adb shell 不就是用安卓底层的 shell 吗,用个终端模拟器就可以了吧
    Muniesa
        18
    Muniesa  
       2020-08-30 17:41:51 +08:00 via Android
    如果 adb 不需要 root 权限,按理说终端模拟器也不需要执行 su 的
    nksky
        19
    nksky  
       2020-08-30 18:00:56 +08:00
    可以的,前段时间就看到有人用手机用 adb 给手表刷机
    geekzjj
        20
    geekzjj  
       2020-08-30 18:27:51 +08:00 via Android   ❤️ 1
    我一加 3,自己改了个内核,在驱动里面加了个字符设备的接口,可以通过那个接口改变三段式的状态。驱动位置在 drivers/input/misc/tri_state_key.c,有兴趣可以试试~
    nicevar
        21
    nicevar  
       2020-08-30 19:12:05 +08:00
    @Muniesa adb shell 跟 java 程序权限还是不一样的,不要弄错了
    howellz
        22
    howellz  
       2020-08-30 19:28:31 +08:00
    跑 adb shell 当然没有问题,但是身份是以当前启动 adb shell 的应用的 uid 运行的,楼主是想得到 shell 的用户权限后运行 shell,这样常规是无法做到的,除非 root 。
    litmxs
        23
    litmxs  
       2020-08-30 20:09:12 +08:00 via Android
    用黑域,用无线网络 adb 激活然后就能执行 adb
    iFlicker
        24
    iFlicker  
       2020-08-30 23:35:27 +08:00 via Android
    juichSSH
    mgrddsj
        25
    mgrddsj  
       2020-08-31 12:44:51 +08:00
    @sky96111 #11 一加 5 出厂系统 (Android 7) 的开发者选项里面是有网络 adb 的,但不是特别稳定,有时候开了没反应。后来的系统就没了。
    ZombieMisaka
        26
    ZombieMisaka  
       2020-08-31 13:56:14 +08:00
    一加老通病了,试试往下按再滑,有奇效
    WilliamHL
        27
    WilliamHL  
       2020-08-31 14:15:02 +08:00
    其实通过无线 adb 就可以实现了,但是楼主说的几个按键我在小米上没实现
    adb tcpip 5555
    adb connect 172.22.113.8:5555
    adb shell settings put global three_Key_mode 1
    adb shell settings put global three_Key_mode 2
    adb shell settings put global three_Key_mode 3
    下面两个都是 OK 的
    adb shell settings get secure default_input_method
    adb shell settings put system screen_brightness 150
    allan1st
        28
    allan1st  
       2020-08-31 18:44:31 +08:00
    记得用一加 3T 的时候直接用 tasker 改这个值就可以了,不需要 root 。当时是为了到办公室自动静音,离开自动取消。
    关于   ·   帮助文档   ·   博客   ·   API   ·   FAQ   ·   实用小工具   ·   1335 人在线   最高记录 6679   ·     Select Language
    创意工作者们的社区
    World is powered by solitude
    VERSION: 3.9.8.5 · 22ms · UTC 23:31 · PVG 07:31 · LAX 15:31 · JFK 18:31
    Developed with CodeLauncher
    ♥ Do have faith in what you're doing.