技术经验分享:adb安装与使用

本文涉及的产品
阿里云百炼推荐规格 ADB PostgreSQL,4核16GB 100GB 1个月
日志服务 SLS,月写入数据量 50GB 1个月
简介: 技术经验分享:adb安装与使用

一、ADB简介


1. 什么是adb?


  adb(Android Debug Bridage)是Android sdk的一个工具;


  adb 是用来连接安卓手机和PC端的桥梁,要有adb作为二者之间的维系,才能让用户在电脑上对手机进行全面的操作。


  Android 的初衷是用adb这样的一个工具来协助开发人员在开发和拷贝Android 应用的过程中更好的调试apk ,因此adb具有安装和卸载apk,拷贝推送文件,查看设备硬件信息,查看应用程序占用资源,在设备执行shell命令等功能!


2.adb的组成


  客户端client:运行在你的电脑上,你可以通过adb命令来调起一个客户端。其他的安卓工具例如:ADT插件、DDMS都可以创建出一个客户端


  服务器server:运行在你电脑上的后台,负责管理client和daemon进行通信。


  守护进程 daemon:运行在模拟器或者Android 设备的后台


二、adb的安装


1.下载解压:adt-bundle-windows-x86_64-20140702(自行百度下载)


2. 配置环境变量到path


  D:\appium\adt-bundle-windows-x86_64-20140702\sdk\platform-tools;


  D:\appium\adt-bundle-windows-x86_64-20140702\sdk\tools;


验证:


三、adb命令的使用


1.adb --help 查询帮助


C:\Users\Administrator\Desktop>adb --help


Android Debug Bridge version 1.0.40


Version 4986621


Installed as D:\android-sdk-windows-appium\platform-tools\adb.exe


global options:


-a listen on all network interfaces, not just localhost


-d use USB device (error if multiple devices connected)


-e use TCP/IP device (error if multiple TCP/IP devices available)


-s SERIAL use device with given serial (overrides $ANDROID_SERIAL)


-t ID use device with given transport id


-H name of adb server host 【default=localhost】


-P port of adb server 【default=5037】


-L SOCKET listen on given socket for adb server 【default=tcp:localhost:5037】


general commands:


devices 【-l】 list connected devices (-l for long output)


help show this help message


version show version num


....................................................................


2.adb connect 127.0.0.1:62001(模拟器连接:adb 连接本地设备127.0.0.1,模拟器端口62001)


3.检测当前连接的设备,如果使用adb devices进行检测,发现没有任何设备信息,我们就需要检查是否有手机/模拟器连接上


详细可参考:


4. adb shell----登录设备shell (命令行的人机界面),ll ls 命令都可以使用,相当于远程进入到了linux命令环境,


5. adb pull //从手机拉取信息放到本地电脑


C:\Users\Administrator\Desktop>adb shell 注释:进入人机界面


root@android:/ # cd /sdcard 注释:cd 进入adcard 目录


cd /sdcard


root@android:/sdcard # ll 注释:ll 展示当前目录下详细文件信息


ll



drwxrwx--- root sdcard_r 2018-11-13 20:18 tencent


-rw-rw---- root sdcard_r 217 2018-07-06 21:18 thunder.txt 注释:准备将当前文件拉取到windows桌面test文件目录


root@android:/sdcard # exit


exit 注释:退出人机界面的命令


C:\Users\Administrator\Desktop

14 KB/s (217 bytes in 0.014s) 注释:adb pull linux下文件路径 windows下路径 //当前行展示下载速度和文件大小


C:\Users\Administrator\Desktop

6.adb push 从本地推送信息到手机上去


C:\Users\Administrator\Desktop>adb push C:\Users\Administrator\Desktop\test\test_20190618142831.png /sdcard/


323 KB/s (106747 bytes in 0.322s) 注释:adb push 本地windows路径文件 linux文件保存路径,注意linux路径必须是/sdcard/否则写/sdcard则为文件并非目录


C:\Users\Administrator\Desktop

root@android:/ # cd /sdcard/


cd /sdcard/


root@android:/sdcard # ll


ll



drwxrwx--- root sdcard_r 2018-11-13 20:18 tencent


-rw-rw---- root sdcard_r 106747 2019-06-18 14:28 test_20190618142831.png 注释:从本地推送进来的文件在这里


-rw-rw---- root sdcard_r 217 2019-06-18 14:15 thunder.txt


root@android:/sdcard #


7. adb logcat 实时打印日志


  adb logcat > 本地路径/文件名.txt 实时打印日志重定向到本地文件


adb logcat -v time > 本地路径/文件名.txt 实时打印日志重定向到本地文件(日志加时间)


C:\Users\Administrator\Desktop>adb logcat -v time > C:\Users\Administrator\Desktop\tsd\log02.txt


07-30 23:15:34.750 I/NOX ( 68): Starting NOX


07-30 23:15:36.630 I/Vold ( 157): Vold 2.1 (the revenge) firing up


07-30 23:15:46.770 I/SystemServer( 492): Entered the Android system server!


8.adb install xxx.apk ----windos可以直接把apk拖动到cmd窗口释放自动加载apk路径,返回success 就说明安装成功了


C:\Users\Administrator\Desktop>adb install D:\appium\apk\com.baidu.BaiduMap-1.apk


3003 KB/s (69469888 bytes in 22.589s)


pkg: /data/local/tmp/com.baidu.BaiduMap-1.apk


Success


9.查看本机当前运行程序的包名:adb shell dumpsys activity | find "mFocusedActivity"


C:\Users\Administrator\Desktop>adb shell dumpsys activity | find "mFocusedActivity" 注释:查看当前运行程序的包名


mFocusedActivity: ActivityRecord{4a924628 u0 com.baidu.BaiduMap/com.baidu.baidumaps.guide.TermsActivity t8}


C:\Users\Administrator\Desktop


package:com.baidu.BaiduMap


package:com.android.wallpapercropper


package:com.android.location.fused



adb shell pm path com.baidu.BaiduMap 注释:查看当前包所在手机中的详细位置


10.adb uninstall 包名 注释:卸载程序,示例如下


C:\Users\Administrator\Desktop>adb uninstall com.baidu.BaiduMap 注释:卸载百度地图应用程序


Success


11.扩展:卸载或者安装的时候保留数据和缓冲文件命令如下


adb install -r D:\appium\apk\com.baidu.BaiduMap-1.apk 注释:安装百度地图保留数据和缓冲文件,重新安装apk


adb uninstall -k com.baidu.BaiduMap 注释:卸载百度地图,但是保留数据和缓冲文件


12.adb connect/disconnect 通过WiFi进行远程连接手机进行调试


参考博文:


13.adb 杀死和重启命令


adb kill-server //终止adb服务


adb start-server//启动adb服务,结合adb kill-server 一起使用


14.adb shell pm list packages //列出当前设备所有的包名


C:\Users\Administrator\Desktop>adb shell pm list packages//列出所有包名


package:com.android.soundrecorder


package:com.android.defcontainer


package:com.tencent.mm


package:com.android.contacts


package:com.android.phone


package:io.appium.unlock


package:com.android.proxyhandler


package:io.appium.settings


...............................................


// -f 列出所有apk路径及包名


// -s 列出系统apk路径和包名


C:\Users\Administrator\Desktop>adb shell pm list packages -s


package:com.android.soundrecorder


package:com.android.defcontainer


package:com.android.contacts


package:com.android.phone


package:com.android.proxyhandler


....................................................


// -3 列出用户apk路径和包名


C:\Users\Administrator\Desktop>adb shell pm list packages -3


package:com.tencent.mm


package:io.appium.unlock


package:io.appium.settings


package:com.baidu.BaiduMap


package:com.ss.android.article.news


//代码参考: https://weibo.com/u/7930566966

15.启动app


adb shell am start -n 包名/入口列名


C:\Users\Administrator\Desktop>adb shell am start -n com.baidu.BaiduMap/com.baid


u.baidumaps.WelcomeScreen


Starting: Intent { cmp=com.baidu.BaiduMap/com.baidu.baidumaps.WelcomeScreen }



adb shell pm clear 包名


C:\Users\Administrator\Desktop>adb shell pm clear com.baidu.BaiduMap


Success



adb shell input tap x轴坐标 y轴坐标


//需要打开


1.打开设置/关于手机或者平板电脑


2.连续点击五下版本号/提示开发者选项已经打开


3.在输入模块打开指针位置选项


例如根据坐标点击启动百度地图


16.aapt的使用



D:\android-sdk-windows-appium\build-tools\28.0.3>aapt dump badging D:\appium\com


.baidu.BaiduMap-1.apk | findstr package


package: name='com.baidu.BaiduMap' versionCode='928' versionName='10.17.3' compi


leSdkVersion='29' compileSdkVersionCodename='10'



D:\android-sdk-windows-appium\build-tools\28.0.3>aapt dump badging D:\appium\com


.baidu.BaiduMap-1.apk | findstr launchable-activity


launchable-activity: name='com.baidu.baidumaps.WelcomeScreen' label='鐧惧害鍦板


浘' icon=''


17.查看安装包信息命令 adb shell dumpsys package 包名


C:\Users\Administrator\Desktop>adb shell dumpsys package com.android.browser


...............................


Packages:


Package 【com.android.browser】 (2e051e24):


userId=10061 gids=【3003, 1028, 1015, 1023, 1007】


pkg=Package{3fe56d36 com.android.browser}


codePath=/data/app/com.android.browser-1


resourcePath=/data/app/com.android.browser-1


legacyNativeLibraryDir=/data/app/com.android.browser-1/lib


primaryCpuAbi=armeabi-v7a


secondaryCpuAbi=null


versionCode=49202 targetSdk=25


versionName=4.9.3


splits=【base】


applicationInfo=ApplicationInfo{121cd625 com.android.browser}


flags=【 SYSTEM HAS_CODE ALLOW_CLEAR_USER_DATA UPDATED_SYSTEM_APP ALLOW_BACKUP KILL_AFTER_RESTORE LARGE_HEAP 】


..................................


未完待续。。。


总结:学习后小结,分享给需要的人,不足之处,后续补充修正!

相关实践学习
阿里云百炼xAnalyticDB PostgreSQL构建AIGC应用
通过该实验体验在阿里云百炼中构建企业专属知识库构建及应用全流程。同时体验使用ADB-PG向量检索引擎提供专属安全存储,保障企业数据隐私安全。
AnalyticDB PostgreSQL 企业智能数据中台:一站式管理数据服务资产
企业在数据仓库之上可构建丰富的数据服务用以支持数据应用及业务场景;ADB PG推出全新企业智能数据平台,用以帮助用户一站式的管理企业数据服务资产,包括创建, 管理,探索, 监控等; 助力企业在现有平台之上快速构建起数据服务资产体系
相关文章
|
运维 Ubuntu Linux
全平台adb工具安装方法
全平台adb工具安装方法
全平台adb工具安装方法
|
6月前
|
Shell 开发工具 Android开发
ADB 下载、安装及使用教程:让你更好地管理 Android 设备
ADB 下载、安装及使用教程:让你更好地管理 Android 设备
|
存储 Shell Android开发
【Android 逆向】获取安装在手机中的应用的 APK 包 ( 进入 adb shell | 获取 root 权限 | 进入 /data/app/ 目录 | 拷贝 base.apk 到外置存储 )
【Android 逆向】获取安装在手机中的应用的 APK 包 ( 进入 adb shell | 获取 root 权限 | 进入 /data/app/ 目录 | 拷贝 base.apk 到外置存储 )
531 0
【Android 逆向】获取安装在手机中的应用的 APK 包 ( 进入 adb shell | 获取 root 权限 | 进入 /data/app/ 目录 | 拷贝 base.apk 到外置存储 )
|
Shell 语音技术 开发者
使用adb安装或卸载卸载手机系统应用
使用adb安装或卸载卸载手机系统应用
2116 0
使用adb安装或卸载卸载手机系统应用
|
IDE 开发工具 Android开发
mac下安装adb环境的三种方式
mac下安装adb环境的三种方式
mac下安装adb环境的三种方式
|
Shell Android开发
删除Shell应用后adb install不能安装应用
删除Shell应用后adb install不能安装应用
209 0
|
Ubuntu Android开发
ubuntu 12.04 安装 adb(Android Debug Bridge) 失败的解决方法
ubuntu 12.04 安装 adb(Android Debug Bridge) 失败的解决方法
226 0
|
缓存 Shell Android开发
Android ADB命令大全(通过ADB命令查看wifi密码、MAC地址、设备信息、操作文件、查看文件、日志信息、卸载、启动和安装APK等)
ADB很强大,记住一些ADB命令有助于提高工作效率。 获取序列号: adb get-serialno 查看连接计算机的设备: adb devices 重启机器: adb reboot 重启到bootloader,即刷机模式: adb reboot bootloader 重启到re...
8806 0
|
网络协议 Shell 开发工具
ADB工具下载安装-连接Android设备
ADB工具下载安装-连接Android设备
ADB工具下载安装-连接Android设备
|
安全 开发工具 Android开发
ADB的安装和使用教程,小米手机连接adb实例演示
ADB的安装和使用教程,小米手机连接adb实例演示
3145 0
ADB的安装和使用教程,小米手机连接adb实例演示