易语言实地培训长期招生 QQ1615457736

乐易论坛

搜索
易语言第6期实地培训火热招生TQApiEc---专为PCQQ/TIM 开发的API接口模块,让你直接调用内部功能WxApiEc-专为PCWx开发的API接口模块,让你快速调用内部功能
易语言第6期实地培训火热招生TQApiEc---专为PCQQ/TIM 开发的API接口模块,让你直接调用内部功能WxApiEc-专为PCWx开发的API接口模块,让你快速调用内部功能
易语言第6期实地培训火热招生TQApiEc---专为PCQQ/TIM 开发的API接口模块,让你直接调用内部功能WxApiEc-专为PCWx开发的API接口模块,让你快速调用内部功能
易歪歪客服聊天助手——永久免费易歪歪客服聊天助手——永久免费易歪歪客服聊天助手——永久免费
广告位招租广告位招租广告位招租
云课堂动态
云课堂动态
查看: 8909|回复: 2
收起左侧

[Android 交流] adb命令整理大全(最详细篇幅)

[复制链接]
  • TA的每日心情
    郁闷
    12 小时前
  • 签到天数: 998 天

    [LV.10]以坛为家III

    发表于 2018-1-5 17:04:49 | 显示全部楼层 |阅读模式

    乐易编程网免费注册!抓住机会哦!

    您需要 登录 才可以下载或查看,没有帐号?立即注册

    x
    由于adb命令实在太多,网上搜索一大把,但是讲的都不是很详细,因工作需要所以打算自己整理一份出来,免得每次都去百度,供大家使用!觉得好的可以收藏,记得免费评分哦!
             adb是什么?:adb的全称为Android Debug Bridge,就是起到调试桥的作用。通过adb我们可以在Eclipse中方面通过DDMS来调试Android程序,说白了就是debug工具。adb的工作方式比较特殊,采用监听Socket TCP 5554等端口的方式让IDE和Qemu通讯,默认情况下adb会daemon相关的网络端口,所以当我们运行Eclipse时adb进程就会自动运行。
          adb有什么用?借助adb工具,我们可以管理设备或手机模拟器的状态。还可以进行很多手机操作,如安装软件、系统升级、运行shell命令等等。其实简而言说,adb就是连接Android手机与PC端的桥梁,可以让用户在电脑上对手机进行全面的操作!
    常用命令:
    1.显示当前运行的全部模拟器:    adb devices
    2.启动ADB    adb start-server
    3.停止ADB   adb kill-server
    4.安装应用程序:      adb install -r [apk文件]
    -l #锁定该程序-r #重新安装该程序,保存数据-s #安装在SD卡内,而不是设备内部存储
    例:adb install --r D:\mm.apk
    5.卸载应用程序:      adb uninstall [packagename]
    例:adb uninstall com.tencent.mm
    -k #不删除程序运行所产生的数据和缓存目录(如软件的数据库文件)
    例:adb uninstall -k com.tencent.mm
    6. 讲手机设备中的文件copy到本地计算机:     
    adb pull 设备目录 本地目录例:adb pull /sdcard/mm.txt D:\(讲内存卡根目录的txt文件copy到D盘根目录)
    7.将本地计算机的文件copy到手机设备中   
    adb push 本地目录 手机设备目录例:adb push D:\mm.txt /sdcard
    8.查看adb命令帮助信息:      adb help
    9.截屏例:adb shell screencap -p 截图文件路径
    10.查看指定包名应用的数据库储存信息(包括储存的SQL语句)
    例:adb shell dumpsys dbinfo[packagename]
    11.查看指定的进程或则进程id的内存信息  
    adb shell dumpsys meminfo[packagename/pid]可以查看进程当前的内存情况
    例:adb shell dumpsys meminfo com.tencent.mm
    12.查看指定包名应用的详细信息(相当于AndroidMainfest.xml中内容)
    adb shell dumpsys [packagename]例:adb shell dumpsys com.tencent.mm
    13.查看当前应用的activity信息adb shell dumpsys activity top查看bug报告:
    adb bugreport

    14.列出手机装的所有apk包名
    adb shell pm list packages
    系统应用:adb shell pm list packages -s
    第三方应用:adb shell pm list packages -3
    使用grep过滤 :adb shell pm list packages | grep qq
    15.清除应用缓存信息:
    adb shell pm clear [packagename]
    16.通过adb启动应用程序页面
    adb shell am start -n[包名+activity名]
    例:adb shell am start -n com.tencent.mm/.ui.SplashAcitvity
    强制停止应用有些时候应用卡死了,需要强制停止,则执行以下命令:adb shell am force-stop <packagename>// 如:adb shell am force-stop cn.androidstar.demo
    17、记录无线通讯日志:   
    一般来说,无线通讯的日志非常多,在运行时没必要去记录,但我们还是可以通过命令,设置记录:
        adb shell
        logcat -b radio

    18、获取设备的ID和序列号:     adb get-product
         adb get-serialno

    19、访问数据库SQLite3    adb shell
         sqlite3
    #cd system/sd/data //进入系统内指定文件夹
    #ls //列表显示当前文件夹内容
    #rm -r xxx //删除名字为xxx的文件夹及其里面的所有文件
    #rm xxx //删除文件xxx
    #rmdir xxx //删除xxx的文件夹

    20.导出设备信息
    adb get-serialno > 序列号.txt
    adb shell cat /sys/class/net/wlan0/address > MAC地址.txt
    adb shell getprop ro.product.model > 设备型号.txt
    adb shell getprop ro.build.version.release> 系统版本.txt
    adb shell pm list packages -s > 系统应用的所有包名.txt
    adb shell pm list packages -3 > 第三方应用包名.txt
    adb shell wm size > 屏幕分辨率.txt
    adb shell wm density > 屏幕密度.txt
    adb shell cat /proc/cpuinfo > CPU信息.txt
    adb shell pm list permissions -f > 权限.txt
    adb shell pm list users -f > 用户.txt
    21.重启adb reboot
    还有2个非常有用的命令:
    1.备份adb backup
    [-f <file>] [-apk|-noapk][-shared|-noshared] [-all] [-system|nosystem] [<packages...>]
    例:adb backup -f mm.ab -noapk -noshared -nosystemcom.tencent.mm你可以使用的最基本的命令是很简单的
    adb backup -all
    它将使用默认方式备份应用和设备的数据(不包含apk)到当前目录下并保存为文件backup.ab
    这个命令有可能不对每个设置都有效,如果你出现像这种 "adb: cannot open file ./backup.ab"的错误,使用 adb backup -all -fC:\backup.ab来代替,其中路径C:\可根据喜好替换
    对各个参数的解释:
    -f <file>
    用这个来选择备份文件存储在哪里,例如-f /backup/mybackup.ab将会使文件存储在根磁盘(WindowsC盘等等)下一个名为backup的文件夹里,并且备份文件名为mybackup.ab
    -apk|-noapk
    这个决定是否在备份里包含apk或者仅仅只备份应用数据,个人推荐使用-apk以免有的应用在应用市场找不到,如果不使用则默认的是-noapk
    -shared|-noshared
    这个参数用于决定是否备份设备共享的SD card内容,默认是-noshare,主要包括内部存储中的音乐、图片和视频,因此为保险起见,建议加上-share
    -all
    这个参数是一种简单地表达所有应用的说法,package参数可以选择备份单独的应用,如果你不是备份某个应用,使用-all备份整个系统
    -system|-nosystem
    这个参数决定-all标签是否包含系统应用,默认的是-system,根据情况可选择是否用-nosystem
    <packages...>
    如果你知道应用安装包的名称(例如com.google.android.Apps.plus),就可以使用该参数备份特定应用。
    3.当决定如何执行备份后,输入你喜欢的命令,在华为G700上测试,使用命令
    adb backup -apk -all

    2.使用run-as在非root情况获取沙盒数据(前提是开启debuggable模式)
    1.   shell@android:/data $ run-as com.your.package
    2.   run-as com.your.package
    3.   shell@android:/data/data/com.your.package $ cd /data/data/com.your.package  
    4.  cd /data/data/com.your.package
    5.  shell@android:/data/data/com.your.package $ ls  
    6.   ls  
    7.   cache  
    8.  databases
    9. lib  
    10. shared_prefs  
    11. shell@android:/data/data/com.your.package $ cd databases  
    12. cd databases  
    13. shell@android:/data/data/com.your.package/databases $ ls  
    14. yourpackagename.db  
    15. $ cat preferences.db > /mnt/sdcard/yourpackagename.db   
    将你要访问的package目录下的db文件拷贝到sdcard中,这样就可以正常访问了! 对文件进行增删
    1:adb shell "run-aspackage.name chmod 666 /data/data/package.name/databases/file"
    adb pull /data/data/package.name/databases/file .
    adb shell "run-aspackage.name chmod 600 /data/data/package.name/databases/file"
    adb exec-out run-as package.name cat databases/file > file
    2:> adb shellshell $ run-as com.example.packageshell $ chmod 666 databases/fileshell $ exit                                             
    'run-as'shell $ cp /data/data/package.name/databases/file /sdcard/shell $ run-as com.example.packageshell $ chmod 600 databases/file> adb pull /sdcard/file .
    易语言实地培训,报名联系QQ 1615457736
    [超强]《易语言软件加密(防破解)技术特训》
    回复

    使用道具 举报

  • TA的每日心情
    开心
    2019-2-18 01:30
  • 签到天数: 5 天

    [LV.2]偶尔看看I

    发表于 2018-1-13 23:18:08 | 显示全部楼层
    是够全的了
    易语言实地培训,报名联系QQ 1615457736
    [超强]《易语言软件加密(防破解)技术特训》
    回复 支持 反对

    使用道具 举报

  • TA的每日心情
    难过
    2018-7-5 20:22
  • 签到天数: 2 天

    [LV.1]初来乍到

    发表于 2018-2-6 15:18:16 | 显示全部楼层
    即使是小白也要猛点赞
    易语言实地培训,报名联系QQ 1615457736
    [超强]《易语言软件加密(防破解)技术特训》
    回复 支持 反对

    使用道具 举报

    您需要登录后才可以回帖 登录 | 立即注册

    本版积分规则

    关闭

    乐易推荐上一条 /6 下一条

    快速回复 返回顶部 返回列表