adb命令整理大全(最详细篇幅)
本帖最后由 wushaominkk 于 2018-1-15 10:07 编辑由于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
-l #锁定该程序-r #重新安装该程序,保存数据-s #安装在SD卡内,而不是设备内部存储
例:adb install --r D:\mm.apk
5.卸载应用程序: adb uninstall
例: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
11.查看指定的进程或则进程id的内存信息
adb shell dumpsys meminfo可以查看进程当前的内存情况
例:adb shell dumpsys meminfo com.tencent.mm
12.查看指定包名应用的详细信息(相当于AndroidMainfest.xml中内容)
adb shell dumpsys 例: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
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将会使文件存储在根磁盘(Windows的C盘等等)下一个名为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 .
更新一些反编译常用命令:
1.查看当前进程的内存的加载情况啊:
cat /proc/7654/maps 查看当前进程内存的映射情况
2.查看当前应用使用的端口号信息:
cat /proc//net/tcp
3.查看进程的状态信息:
cat /proc//status可以通过该命令获取到当前进程的包名,PID,PPID等等重要信息(比较实用的命令)
4.查看一个dex文件的详细信息
dexdump
5.使用aapt命令获取apk的清单文件
aapt dump xmltree [需要查看的资源文件xml]
例:aaptdump xmltree mm.apk AndroidMainfest.xml > demo.txt(讲mm应用中的AndroidMainfest.xml文件导入到新建的demo.txt文本中)
这里可能大家有个误区,aapt命令是与adb命令不是同一个命令,如果要使用和adb一样需要配置环境变量,也可以在SDK的build-tools文件夹内,shift+右键在此处打开命令窗口使用该命令!
荆云 发表于 2018-1-4 11:38
ADB指令怎么使用
手机打开usb调试,在电脑上用快捷键win+r 输入cmd,在输入以上指令就好了 补充一些,也许有人用的上呢
settings get system namespace key
settings get global namespace key
settings get secure namespace key
设置值
settings put system namespace key
settings put global namespace key
settings put secure namespace key
{system, secure, global}
对应的是
/data/data/com.android.providers.settings/databases/settings.db
的三个表
2
system
settings get system namespace key
settings put system namespace key
namespace key清单如下
----------------------------------------------------------------
2 airplane_mode_radios cell,bluetooth,wifi,nfc,wimax,ant
3 airplane_mode_toggleable_radios bluetooth,wifi,nfc,ant
7 stay_on_while_plugged_in 0
8 wifi_sleep_policy 2
12 wifi_networks_available_notification_on 1
14 cdma_cell_broadcast_sms 1
15 data_roaming 0
18 mobile_data0 1
19 data_roaming0 0
20 mobile_data1 1
21 data_roaming1 0
22 mobile_data2 1
23 data_roaming2 0
24 netstats_enabled 1
26 usb_mass_storage_enabled 1
27 wifi_max_dhcp_retry_count 9
28 wifi_display_on 0
29 lock_sound /system/media/audio/ui/Lock.ogg
30 unlock_sound /system/media/audio/ui/Unlock.ogg
31 power_sounds_enabled 1
32 low_battery_sound /system/media/audio/ui/LowBattery.ogg
34 desk_dock_sound /system/media/audio/ui/Dock.ogg
35 desk_undock_sound /system/media/audio/ui/Undock.ogg
36 car_dock_sound /system/media/audio/ui/Dock.ogg
37 car_undock_sound /system/media/audio/ui/Undock.ogg
38 wireless_charging_started_sound /system/media/audio/ui/WirelessChargingStarted.ogg
39 dock_audio_media_enabled 1
41 power_notifications_vibrate 0
42 power_notifications_ringtone content://settings/system/notification_sound
43 set_install_location 0
44 default_install_location 0
46 call_auto_retry 0
47 preferred_network_mode 7
48 subscription_mode 1
49 low_battery_sound_timeout 0
51 wifi_suspend_optimizations_enabled 1
52 send_action_app_error 0
53 window_animation_scale 1.0
54 transition_animation_scale 1.0
55 animator_duration_scale 1.0
57 wifi_watchdog_on 1
58 adb_enabled 1
61 device_provisioned 1
63 development_settings_enabled 1
64 install_non_market_apps 1
66 mobile_data 0
75 bluetooth_input_device_priority_C8:FF:28:2C:31:BA -1
76 bluetooth_a2dp_sink_priority_C8:FF:28:2C:31:BA -1
77 bluetooth_headset_priority_C8:FF:28:2C:31:BA -1
78 bluetooth_input_device_priority_30:22:03:03:90:66 100
82 bluetooth_headset_priority_30:22:03:03:90:66 1000
83 bluetooth_last_connected_a2dp_sep_type_30:22:03:03:90:66 2
84 bluetooth_a2dp_sink_priority_30:22:03:03:90:66 1000
188 always_finish_activities 0
199 bluetooth_input_device_priority_D4:6E:5C:E7:9D:30 100
200 bluetooth_a2dp_sink_priority_D4:6E:5C:E7:9D:30 100
201 bluetooth_headset_priority_D4:6E:5C:E7:9D:30 100
204 power_notifications_enabled 1
205 emergency_tone 1
267 auto_time 1
268 auto_time_zone 1
269 wifi_display_certification_on 1
273 bluetooth_input_device_priority_74:A5:28:B1:96:58 -1
274 bluetooth_a2dp_sink_priority_74:A5:28:B1:96:58 -1
275 bluetooth_headset_priority_74:A5:28:B1:96:58 -1
276 bluetooth_on 0
319 audio_safe_volume_state 1
340 display_size_forced
341 airplane_mode_on 0
342 wifi_on 1
343 mode_ringer 1
344 dock_sounds_enabled 1
345 wifi_scan_always_enabled 1
346 enable_quickboot 1
347 assisted_gps_enabled 1
348 package_verifier_enable 1
349 backup_enabled 1
350 touch_exploration_enabled 1
351 accessibility_display_magnification_enabled 1
352 lock_screen_owner_info_enabled 1
353 power_menu_user_enabled 1
354 sound_effects_enabled 1
355 lockscreen_sounds_enabled 1
356 haptic_feedback_enabled 1
357 volume_adjust_sounds_enabled 1
3
global表
settings get global namespace key
settings put global namespace key
namespace key清单如下
----------------------------------------------------------------
4
secure
settings get secure namespace key
settings put secure namespace key
namespace key清单如下
----------------------------------------------------------------
2 wifi_watchdog_watch_list GoogleGuest
3 mock_location 0
4 backup_enabled 0
5 backup_transport com.google.android.backup/.BackupTransportService
6 mount_play_not_snd 1
7 mount_ums_autostart 0
8 mount_ums_prompt 1
9 mount_ums_notify_enabled 1
10 accessibility_script_injection 0
11 accessibility_web_content_key_bindings 0x13=0x01000100; 0x14=0x01010100; 0x15=0x02000001; 0x16=0x02010001; 0x200000013=0x02000601; 0x200000014=0x02010601; 0x200000015=0x03020101; 0x200000016=0x03010201; 0x200000023=0x02000301; 0x200000024=0x02010301; 0x200000037=0x03070201; 0x200000038=0x03000701:0x03010701:0x03020701;
12 long_press_timeout 500
13 touch_exploration_enabled 0
14 speak_password 0
15 accessibility_script_injection_url https://ssl.gstatic.com/accessibility/javascript/android/AndroidVox_v1.js
16 lockscreen.disabled 0
17 screensaver_enabled 1
18 screensaver_activate_on_dock 1
19 screensaver_activate_on_sleep 0
20 screensaver_components com.android.deskclock/com.android.deskclock.Screensaver
21 screensaver_default_component com.android.deskclock/com.android.deskclock.Screensaver
22 accessibility_display_magnification_enabled 0
23 accessibility_display_magnification_scale 2.0
24 accessibility_display_magnification_auto_update 1
26 default_theme_package
27 default_theme_components
28 android_id 8c3f03f7581135df
31 selected_input_method_subtype -1
32 selected_spell_checker com.android.inputmethod.latin/.spellcheck.AndroidSpellCheckerService
33 selected_spell_checker_subtype 0
35 lock_screen_owner_info_enabled 0
37 sms_default_application com.android.mms
39 input_methods_subtype_history com.android.inputmethod.latin/.LatinIME;-921088104
41 bluetooth_address 22:22:F5:8B:19:12
42 bluetooth_addr_valid 1
43 user_setup_complete 1
45 lock_screen_fallback_appwidget_id 4
46 advanced_reboot 1
48 location_providers_allowed
50 enabled_input_methods com.android.inputmethod.latin/.LatinIME:com.iflytek.inputmethod/.FlyIME
51 default_input_method com.iflytek.inputmethod/.FlyIME
53 recents_long_press_activity
54 incall_power_button_behavior 2
55 ring_home_button_behavior 2
56 app_perf_profiles_enabled 1
61 enabled_notification_listeners org.cyanogenmod.theme.chooser/org.cyanogenmod.theme.chooser.NotificationHijackingService
65 adb_port -1
66 bluetooth_name qing
67 themeConfig {"default":{"mOverlayPkgName":"holo","mIconPkgName":"holo","mFontPkgName":"holo"}} adb是什么? ADB指令怎么使用 感谢分享 谢谢,不过这个看着没有多少啊 求 fastboot命令大全!!! 这个有用,之后用的着 学习了, 如何刷砖??? 感谢楼主分享