ADB(Android Debug Bridge),是Android SDK中的一个工具, 它是在Android sdk/platform-tools 文件夹下的,使用ADB可以直接操作管理Android模拟器或者真实的Andriod设备。
    ADB主要功能有:
    1、在Android设备上运行Shell(命令行)
    2、管理模拟器或设备的端口映射
    3、在计算机和设备之间上传/下载文件
    4、将电脑上的本地APK软件安装至Android模拟器或设备上


ADB的配置
如果你直接进入cmd敲adb命令是没用的,必须先配置环境变量,右键我的电脑-->属性-->高级设置-->环境变量,然后把我们adb的路径复制到PATH的后面,如下图所示:




如果这时敲adb命令还是无效,那么重启一下cmd或者拔了USB重启一下应该就行了。

常用的adb命令

查看已连接设备(adb devices)
使用此命令查看所有的连接设备,并列出它们的ID,如果存在多个设备连接,可以使用 adb -s DEVICE_ID 来指定特定的设备。

安装应用(adb install )
这个命令将指定的apk文件安装到设备上,如果设备上已经安装了应用,可以使用可选参数 -r 重新进行安装并保留所有数据。



卸载应用(adb uninstall <软件名>)
如果在uninstall后面加 -k 参数,为卸载软件但是保留配置和缓存文件

进入设备的命令行(adb shell )
这个命令将登录设备的shell
    adb shell
    后面加将是直接运行设备命令, 相当于执行远程命令

日志(adb logcat)
用来在命令行中显示日志流
按标签名过滤
adb logcat -s TAG_NAME
adb logcat -s TAG_NAME_1 TAG_NAME_2



按优先级过滤
显示指定告警优先级及以上的日志
adb logcat "*:PRIORITY"



按标签名和优先级过滤
adb logcat -s TAG_NAME:PRIORITY  
adb logcat -s TAG_NAME_1:PRIORITY TAG_NAME_2:PRIORITY



帮助(adb help)
这个命令将显示帮助信息

发送文件(adb push<本地路径> <远程路径>)
从电脑上发送文件到设备,adb remount 在执行push命令之前我们还需要使用remount命令获取上传文件权限。 这里要注意的就是如果你需要向一个二级目录里放文件的时候,一定使用"/"而不能使用"\",原因是android是liunx下的系统,而我们用的是windows。比如:sdcard/aa这样就好啦,否则会提示找不到或者权限不够。



获取设备ID(adb get-product)

获取设备序列号(adb get-serialno)

查看Debug报告(adb bugreport)

列出手机装的所有app的包名(adb shell pm list packages)

列出系统应用的所有包名(adb shell pm list packages -s)

列出除了系统应用的第三方应用包名(adb shell pm list packages -3)





常用的ADB Shell命令
通过adb shell命令进入shell
        a)访问数据库
            sqlite3
        b)记录无线通讯日志
            一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录:
            logcat -b radio
        c)删除应用
            Android没有提供一个卸载应用的命令,需要自己手动删除:
            cd /data/app
            rm 应用名称.apk
        d)查看目录
            ls
        e)打印或设置当前系统时间
            date
        f)查看内存信息
            cat /proc/meminfo
        g)查看CPU信息
            cat /proc/cpuinfo

删除Android系统Rom自带的软件
a.确定手机root了,取得了root权限才能删除系统文件呀.
        b.下载Android_db.rar,解压到%windir/%System32下.
        c.手机连接数据线,在电脑上打开cmd,然后输入命令
                adb remount
                adb shell
                su
                执行完成之后,你会看到:
                * daemon not running. starting it now *
                * daemon started successfully *
        d.接着就是Linux命令行模式了,输入
                cd system/app
                你会发现没啥变化,然后输入ls回车.
                这时候列表显示了system/app里面的所有文件,也就是Rom集成的一些软件了.
        e.开始删除吧!比如删除Youtube,他的文件名是Youtube.odex和Youtube.apk
                我们要删除这2个文件,敲入以下命令:
                rm Youtube.*
                重启,Youtube已经删除掉了,注意各位同学千万不要删除你不知道是啥的东西.


sqlite3 adb命令
进入数据库的两种方式
  第一种:sqlite3 数据库名称.xx
  第二种:adb shell
            sqlite3

.databases               列出数据库文件名
.tables ?PATTERN?        列出?PATTERN?匹配的表名
.import FILE TABLE       将文件中的数据导入的文件中
.dump ?TABLE?            生成形成数据库表的SQL脚本
.output FILENAME         将输出导入到指定的文件中
.output stdout           将输出打印到屏幕
.mode MODE ?TABLE?       设置数据输出模式(csv,html,tcl…
.nullvalue STRING        用指定的串代替输出的NULL串
.read FILENAME           执行指定文件中的SQL语句
.schema ?TABLE?          打印创建数据库表的SQL语句
.separator STRING        用指定的字符串代替字段分隔符
.show                    打印所有SQLite环境变量的设置
.quit                    退出命令行接口



更多的adb命令可以看这里https://github.com/mzlogin/awesome-adb

更多相关文章

  1. Android系统上实现应用程序的静默安装
  2. Android(安卓)studio使用与设置
  3. Android(安卓)Gradle编译学习日记之一(搭建 Gradle 环境以及编译
  4. android adb push 与 adb install 区别(两种安装APK的方法)
  5. Android(安卓)实现文件的下载
  6. Android文件系统保护——dmverity
  7. ANDROID应用安全防御
  8. Adb移植(一)简单分析
  9. 开机关机动画工作流程

随机推荐

  1. Android(安卓)向桌面添加删除快捷方式
  2. Android(安卓)代码中动态为RadioGroup添
  3. Android PackageManager 用法
  4. 作业一:android开发平台的演变以及Android
  5. Android(安卓)Matrix学习
  6. shape属性大全
  7. Android绘制流程窗口启动流程分析(下)
  8. Android君子剑之ScrollView之君子好逑
  9. android-apt切换为官方annotationProcess
  10. 跟踪Android(安卓)callback 调用堆栈