android工具-adb & android studio

android系统是google 用java基于liunx系统开发的手机操作系统

adb android debug brige android系统的通用调试工具 命令风格基于liunx

在androidSDK包的platform-tools中

1、检查设备

adb devices (-l)

device 连接正常状态

unauthorized  没有授权,手机端- 是否确认信任这台电脑-点击确认

offline  adb版本为1.0.31之上  ./adb version

1、1 无线连接设备(usb接口不够用时)

android设备先连接电脑打开无线连接设置:adb tcpip 5555(连接端口)

查看android设备ip地址

去掉usb连接

电脑端主动连接android设备:adb connect android的ip:5555

查看是否连接成功:adb devices

切换回usb模式:adb usb

2、adb控制命令

adb [-s deviceid] shell进入操作系统 可以进行ls 、ping等liunx系统命令操作 exit退出

adb install apk 安装apk

exit退出android系统

su root 切换root用户(手机需要具有root权限 工具获取root权限 否则su not found)

3、adb shell 命令(使用此命令可以从cmd控制台启动 activity, services;发送 broadcast等)

am命令(activity manager)

./adb shell am start -W -n com.android.chrome/com.google.android.apps.chrome.Main -d http://yahoo.com

-W wait for launch to complete

-n +类名

使用chome浏览器访问yahoo

./adb shell am start -n com.tencent.mm/com.tencent.mm.ui.LauncherUI -d http://yahoo.com 

只是唤起微信,没有唤起微信浏览器,不能访问

./adb shell am start -n com.tencent.mm/com.tencent.mm.plugin.webview.ui.tools.WebViewUI -d http://yahoo.com   

微信浏览器


(报错信息:

Starting: Intent { dat= http://yahoo.com cmp=com.tencent.mm/.plugin.webview.ui.tools.WebViewUI }
java.lang.SecurityException: Permission Denial: starting Intent { dat= http://yahoo.com flg=0x10000000 cmp=com.tencent.mm/.plugin.webview.ui.tools.WebVie wUI } from null (pid=1863, uid=2000) not exported from uid 10135
        at android.os.Parcel.readException(Parcel.java:1465)
        at android.os.Parcel.readException(Parcel.java:1419)
        at android.app.ActivityManagerProxy.startActivityAsUser(ActivityManagerNative.java:2215)
        at com.android.commands.am.Am.runStart(Am.java:680)
        at com.android.commands.am.Am.onRun(Am.java:270)
        at com.android.internal.os.BaseCommand.run(BaseCommand.java:47)
        at com.android.commands.am.Am.main(Am.java:76)
        at com.android.internal.os.RuntimeInit.nativeFinishInit(Native Method)
        at com.android.internal.os.RuntimeInit.main(RuntimeInit.java:243)
        at dalvik.system.NativeStart.main(Native Method)


ps 查看androd进程信息 ps | grep threadname

查看andriod设备的ip地址:./adb shell netcfg 

dumpsys

adb shell dumpsys SurfaceFlinger -latency -clear 清除当前
adb shell dumpsys SurfaceFlinger -list  查看可视窗口列表
adb shell dumpsys gfxinfo packageName 获取处理时间

4、adb logCat命令(查看andorid系统的输出日志,可以通过调用android的api进行日志输出)

adb logcat -d -s ActivityManager|findstr"Displayed">D:\log.txt   #-d dump -s silent 将过滤后的日志输出到log.txt文件中

logcat包括一个输出行,包含一个名为 Displayed的值。 此值表示在启动过程和完成在屏幕上绘制相应activity之间经过的时间量

4、android手机识别

imei号 唯一识别手机的号 (International Mobile Equipment Identify 小米推送识别码) *#06# 查询imei号

android 序列号(udid) 是手机系统的唯一号 第一次启动时随即产生的一个数字 (adb devices -l 可以查看udid)

app 安装后每个app运行在自己的liunx终端,并且分配唯一的Linux user ID,并分配响应的权限

5、adb 系统文件处理

系统文件只有root用户可以进入并且修改,无需进入adb shell命令行

从手机设备拷出:adb pull /system/etc/hosts<PC机上文件名>

拷入手机设备:adb push <PC机上文件名>/system/etc/hosts

6、android studio 链接android设备,查看android设备日志输出

android设备开启了logCat记录功能

android设备打开开发者选项-》usb调试

在android studio的android monitor中选择该设备即可

点击工具栏的 android device monitor 即可看到选中设备的输出日志

猜你喜欢

转载自blog.csdn.net/weilan100/article/details/51803390