常用adb命令

一、常用基本指令
    adb root    // 获取root权限
    adb shell
    adb reboot                                    // 重启
    reboot
    reboot -p                                    // 关机
    adb remount
    adb pull /data/media/0/mtklog e:mtklog/
    adb push e:mtklog/ /data/media/0/mtklog        // push之前需要adb remount
    adb install xxx.apk    //安装APK

 

二、调试相关

1.adb打印log

查看kernel  log

cat /proc/kmsg | grep "qqq"

或者adb shell cat /dev/kmsg |grep "qqq"

查看hal层和上层log

adb logcat -v time |find "qqq"
logcat | grep "qqq"

 3.dmesg充当串口log -- 但是无preloader与lk的log
        增大内核缓冲区 - 修改kernel-3.18\kernel\printk\printk.c 
        -332    #define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT)
        +332    #define __LOG_BUF_LEN (1 << CONFIG_LOG_BUF_SHIFT << 5)
adb shell dmesg > log.log    //查看内核缓冲区log(包括开机log,同串口log)
    
3. 查看input设备信息: tp,keypad,sensor

        adb shell  getevent

        getevent -l
        getevent -i                    如这里能看到设备(如tp)信息,说明该设备驱动已运行,已通过i2c读到设备信息(gt5668)
        getevent -t /dev/input/event5
        
4. 查看pin脚模式状态
        cat /sys/class/misc/mtgpio/pin
        PIN:MODE,PULL_SEL,DIN,DOUT,PULL EN,DIR,IES,SMT
        0:    1     1          1      0       1       0   1   0
        1:  0     0          0      0       1       0   1   0

android8.1查看gpio状态:cat /sys/devices/platform/1000b000.pinctrl/mt_gpio   
写值   echo \"-w=99:0 1 0 0 0 0 0 1\" > /sys/class/misc/mygpio/pin
    
5. 查看中断
        --  查看中断是否注册成功
        cat /proc/interrupts
                CPU0        CPU1
        29:            0            0    GIC    29    arch_timer
        ...
        196            0            0    GIC    196    mtk-tpd
    

 6. 查看进程
        root@Z PLAY:/system/bin # ps |grep mem        // 查看进程
            system    256   1     1184   384   c0051864 b6fb1310 S /system/bin/memsicp
            
        root@Z PLAY:/system/bin # kill 256            // 杀死进程
        root@Z PLAY:/system/bin # memsicp            // 手动启动进程
        
        
    
三、常用节点查看
    1. 查看机器中lcm型号:
        cat /proc/cmdline                    // 包含lcm的型号(6.0有,7.0没有-需要可以自己加)  
    2. 查看系统分辨率    
        cat /system/build.prop | grep lcd_density // 得“240”
    3.获取软件中虚拟按键坐标       
        cat /sys/board_properties/virtualkeys.mtk-tpd       
     4.查看camera  是否读到id     
        cat /proc/driver/camera_info                    // 查看已经读到ID的camera
     5. 查看后副摄亮度,判断副摄的工作状态
        cat /proc/driver/dualcam_brightness                // 1 -- 光线强 0 -- 光线弱   
        cat /sys/bus/platform/drivers/image_sensor/yuv_shutter    // 可以获得亮度值

四、sensor调试相关
    1.架构实现    - 两个路径的节点是一样的,cat出来也是相同的,hal层走class
        /sys/class/misc/m_acc_misc/***                
        /sys/devices/virtual/misc/m_acc_misc/***    有若干属性,可以读写操作

  
        cat /sys/.../accenablenodata    -- 不支持        echo 0/1    > 无作用
        cat /sys/.../accactive            -- 1(使能)    echo 0    > /sys/.../accactive -- disable
        cat /sys/.../accdelay(不常用)
        cat /sys/.../accbatch(不常用)
        cat /sys/.../accflush(不常用)
        cat /sys/.../accdevnum            -- 4(/dev/input/event4)

    2.驱动实现
        /sys/bus/platform/drivers/gsensor/*** 有若干属性,可以读写操作

    *    cat /sys/.../chipinfo        -- MC3XXX Chip                    -- 直接打印MC3XXX Chip
    *    cat /sys/.../sensordata     -- 1758 0695 1b88                -- 读地址0x00
        cat /sys/.../cali            -- 三组校准数据                 -- 第二组为校准系数,上层未下发就为0 
        cat /sys/.../selftest        -- 空(未设置)
        cat /sys/.../firlen         -- 0                            -- 滤波长度 - 从dts获得 - 全部为0
        cat /sys/.../trace            -- 0x0000                        -- mc3xxx_i2c_probe()把它设置为0
        cat /sys/.../status         -- CUST: 2 7 <-1 0>             -- i2c_num direction <power_id power_vol> -  从dts获取
        cat /sys/.../power            -- 亮屏0x0041,灭屏0x0043        -- 读地址0x07
        cat /sys/.../version        -- 2.1.6                            -- 打印驱动的宏
    *    cat /sys/.../chipid         -- 7C-5F-5E-46                    -- 读地址0x3C
        cat /sys/.../virtualz        -- 不支持
    *    cat /sys/.../regmap         -- 打印所有寄存器的值
    *    cat /sys/.../orientation    -- 方向                            -- 从dts获取 echo 7 > /sys/.../orientation
        cat /sys/.../accuracy        -- 2(精度 - 宏设置)
        cat /sys/.../selfcheck        -- 乱码
        cat /sys/.../validate        -- 0(验证成功)                    -- 从0x3b读出pcode - 匹配mc3***系列芯片 - 验证成功返回0        
            
五、马达vibrator
    调试马达震动时间 1000毫秒=1秒:
        echo 1000 > /sys/class/timed_output/vibrator/enable (节点)

六、adb模拟按键上报键值

在/frameworks/base/include/ui/KeycodeLabels.h中定义了很多keyevent

adb shell inputkeyevent  xxx     后面接相应的键值

常用键值如下:
1 –> “KEYCODE_MENU” 
3 –> “KEYCODE_HOME” 
4 –> “KEYCODE_BACK” 
19 –> “KEYCODE_DPAD_UP”    //上下左右,控制光标移动
20 –> “KEYCODE_DPAD_DOWN” 
21 –> “KEYCODE_DPAD_LEFT” 
22 –> “KEYCODE_DPAD_RIGHT” 
23 –> “KEYCODE_DPAD_CENTER”    //确认键
24 –> “KEYCODE_VOLUME_UP” 
25 –> “KEYCODE_VOLUME_DOWN” 
26 –> “KEYCODE_POWER”   //电源键

其他特殊键值:

//可以解锁屏幕

adb shell input keyevent 82

//在屏幕上做划屏操作,前四个数为坐标点,后面是滑动的时间(单位毫秒)

adb shell input swipe 50 250 250 250 500

//在屏幕上点击坐标点x=50 y=250的位置。

adb shell input tap 50 250

//输入字符abc

adb shell input text abc

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值