ADB远程连接

来源:互联网 发布:ubuntu iso安装 编辑:程序博客网 时间:2024/05/14 05:12
  1. 手机设置允许WiFi连接ADB(参考)

    • 一般情况
      连接电脑后执行$ adb tcpip 5555
      (在运行 Android 4.2 及更新版本的设备上,Developer options 默认情况下处于隐藏状态。如需将其显示出来,请转到 Settings > About phone 并点按 Build number 七次。返回上一屏幕即可找到 Developer options。)
      取消tcpip模式执行$ adb usb
    • 若手机已root(重启后也有效果)

      $ susetprop persist.adb.tcp.port 5555stop adbdstart adbd

      最后这步无法在电脑端操作, 可以在手机中 开发者选项->USB调试 toggle两次.

      1. 获取手机IP地址, 电脑端执行$ adb connect device_ip_address
      2. 确认已连接$ adb devices
      3. 屏幕截图

        $ adb shellshell@ $ screencap /sdcard/screen.pngshell@ $ exit$ adb pull /sdcard/screen.png

        用Bash操作直接保存到电脑端
        adb shell screencap -p | perl -pe 's/\x0D\x0A/\x0A/g' > screen.png
        或者
        adb shell screencap -p | sed 's/\r$//' > screen.png

      4. 录制视频

        $ adb shellshell@ $ screenrecord --verbose /sdcard/demo.mp4(press Control + C to stop)shell@ $ exit$ adb pull /sdcard/demo.mp4
      5. 查看Android system信息
        adb shell dumpsys battery
        adb shell uptime

  2. 若要远程连接, 需要进行路由器设置

    1. 静态地址 DHCP服务器->静态地址保留
    2. 端口转发 转发规则->虚拟服务器(服务端口 5555, 5557等)
  3. 初次连接授权问题

    • adb server在Windows上
      %HOMEPATH%/.android中的adbkey和adbkey.pub
    • adb server在Linux系统中(比如Bash On Windows)
      ~/.android中的adbkey和adbkey.pub, 可以从%HOMEPATH%\AppData\Local\lxss\home\$LOGNAME\.android中获得

    若设备A没有授权, B已经授权, 将B中的这两个文件放在A的相应位置, A就可以正常连接了.
    Windows部分比较好操作, Bash On Windows貌似是无法用复制粘贴的方法替代adbkey(.pub)文件的, 这时使用的方法是(在Windows中操作):

    1. Ctrl+C复制新的adbkey的内容
    2. nano ~/.android/adbkey, 使用Ctrl+K删除所有行, 点击右键(粘贴)

    即可.

  4. 更新adb版本(参考)
    在这里下载deb文件(一般是arm64架构)
    运行命令sudo dpkg -i xxxxxxx.deb
    若失败需要下载并安装相应的依赖

  5. 模拟按键

    $ adb shell inputusage: input ...   input text <string>   input keyevent <key code number or name>   input tap <x> <y>   input swipe <x1> <y1> <x2> <y2> [duration(ms)]

    Some possible values for event_code are:(Source)

    1 –> “KEYCODE_MENU”
    3 –> “KEYCODE_HOME”
    4 –> “KEYCODE_BACK”
    7 –> “KEYCODE_0”
    24 –> “KEYCODE_VOLUME_UP”
    25 –> “KEYCODE_VOLUME_DOWN”
    26 –> “KEYCODE_POWER”
    27 –> “KEYCODE_CAMERA”
    29 –> “KEYCODE_A”
    82 –> “KEYCODE_MENU”

    swipe和tap的坐标是以像素为单位的. 左上角为 (0, 0).

0 1
原创粉丝点击