正常情况
一、确保电脑与电视处于同一网络
二、确保电视已经允许adb调试
三、找到网络–媒体设备找到电视设备,属性查看ip地址
四、window+r打开cmd,输入adb devices查看已连接的设备(注意:如果存在两个以上。需要根据ip判断运行在哪个设备上)
五、如果已连接,就不需要再次连接了。否则输入adb connect ip地址进行连接,如果出现connect to ip地址,则表示连接成功
六、adb install apk路径 进行安装。需要指明的话。adb -s ip地址 install apk路径。等待安装。出现success则表示安装成功
其他情况(adb连接手机)
一、先通过usb连接手机,保证在同一网络下,手机可调式模式开启
二、执行 adb tcpip 5555 来进行端口映射,如果返回 restarting in TCP mode port: 5555 则映射成功
三、这个时候就可以拔掉usb,执行 adb connect ip地址 来进行连接了
1、出现emulator-5554 devices,大部分可能是因为你开启了androidStudio的虚拟机
2、断开连接:adb disconnect ip地址
3、杀死devices:adb kill-server
4、重建devices:adb start-server
5、截屏:adb shell /system/bin/screencap -p /sdcard/1.png
6、将图片保存到电脑上:adb pull /sdcard/1.png C:\Users\Administrator\Desktop
7、打开应用:adb shell am start -n 包名(build中的applicationId)/启动activity路径
8、安装apk:adb install apk的路径
但有时报错Failure [INSTALL_FAILED_TEST_ONLY]:adb install -t apk的路径 就可以了
- -l :锁定应用程序
- -r: 覆盖原包安装
- -t :允许测试包
- -d :允许降级覆盖安装
- -p :部分应用安装
- -g :为应用程序授予所有运行时的权限
9、卸载app:adb uninstall 包名
10、查看当前打开页面的包名和类名:adb shell dumpsys window | findstr mCurrentFocus
11、查看自己设置的日志:adb logcat -s TAG
12、查看所有的错误日志:adb logcat *:E
13、导出所有日志到文件中:adb logcat -d > C:\Users\Administrator\Desktop\1.txt (桌面的1.txt文件)
14、查看所有日志并输出到指定文件中:adb logcat -v time > C:\Users\Administrator\Desktop\1.txt (桌面的1.txt文件)
15、查看指定tag日志,并输出到指定文件中:adb logcat -v time -s pjxLog > C:\Users\EDY\Desktop\2.txt
16、查看所有内存使用情况:adb shell dumpsys meminfo > C:\Users\Administrator\Desktop\1.txt
17、查看当前app内存使用情况:adb shell dumpsys meminfo com.xxx.xxx
18、实时查看当前进程内存使用情况:adb shell top | findstr com.xxx.xxx
19、查看指定app信息:adb shell dumpsys package com.xxx.xxx
20、查看指定app版本:adb shell pm dump com.xxx.xxx | findstr “version”
21、抓取网络包:adb shell tcpdump -i any -p -s 0 -w /data/network.pcap
22、导出网络包:adb pull /data/network.pcap C:\Users\Administrator\Desktop
23、查看ANR具体报错位置:adb bugreport 导出bugreport压缩包,打开压缩包,进入FS->data->anr,拿最新的看就行了
24、生成对应app内存泄漏文件:adb shell am dumpheap com.xxx.xxx /data/local/tmp/test.hprof
25、导出内存泄漏文件:adb pull /data/local/tmp/test.hprof C:\Users\Administrator\Desktop
26、将手机的页面用androidSDK工具打开查看,工具路径一般在D:\android-SDK\tools\monitor.bat
27、查找对应的包名apk地址:adb shell pm path <包名>
28、adb pull <apk地址> <保存地址>
使用adb进行连接wifi上网
1、打开wifi:adb shell cmd wifi enable
2、扫描wifi:adb shell cmd wifi start-scan
3、获取扫描结果:adb shell cmd wifi list-scan-results
4、连接到指定的 Wi-Fi 网络:adb shell cmd wifi connect-network <加密类型> <密码>
- SSID: 你想连接的 Wi-Fi 名称。
- 加密类型: 通常是 WPA 或 WPA2。你可以根据上一步 FLAGS 字段中的信息来判断,如果包含 WPA2 或 RSN,通常就用 WPA。
- BSSID: 路由器的 MAC 地址。
- 密码: Wi-Fi 的密码。
5、验证连接:adb shell dumpsys wifi | grep “mLastClientInfo”
为什么在pc上通过adb就可以操作手机,而将执行adb命令代码放到app中,就不行了?
1、pc-adb:
ADB(Android Debug Bridge)的架构是客户端-服务器(C/S)模式:
客户端(Client):运行在电脑上的adb命令(如adb shell);
服务器(Server):运行在电脑上的adb server(管理客户端与设备的通信);
守护进程(adbd):运行在设备上的后台进程(接收并执行客户端命令)。、
2、app-adb:
当你在手机端代码中执行ADB命令时,本质是应用进程试图直接连接设备上的adbd,但普通应用无此权限(adbd仅响应电脑端客户端或Root权限的请求)。即使开启USB调试,也只是允许电脑端客户端连接设备,手机端应用仍无法直接调用ADB命令。