马上注册,结交更多好友,享用更多功能,让你轻松玩转社区。
您需要 登录 才可以下载或查看,没有账号?立即注册
x
目次
adb 常用命令
1、表现已连接的装备列表
2、进入装备
3、安装 APK 文件到装备
4、卸载指定包名的应用
5、从装备中复制文件到本地
6、将本地文件复制到装备
7、查看装备日记信息
8、重启装备
9、截取装备屏幕截图
10、屏幕分辨率
11、屏幕密度
12、表现装备的总内存、空闲内存、已用内存等信息
13、应用的内存使用情况
14、详细的内存信息
15、查看内存信息
16、查看电池信息
17、查看CPU信息
18、单独查看属性
18.1 查看装备型号
18.2 查看 Android 版本
18.2 ro.product.cpu.abilist 和 ro.product.cpu.abi 区别
19、查看安装的第三方app的包名
20、装备全部包名(含体系)
21、查看将要启动或退出app的包名
22、关闭软件(根据包名)
23、导出装备内的apk文件
24、关闭体系设置(设置App)
25、查看占用内存最高的 3 个App
26、革新2次,返回所以程序所占内存
27、获取正在运行应用的activity
28、启动应用
28.1 根据报名+Activity
28.2 根据包名(用monkey启动应用并输出activity)
29、查看Andriod内置浏览器WebView版本
adb 不常用命令
1、adb shell am
2、adb shell pm
3、adb forward
4、adb shell input :
4.1 模拟点击屏幕坐标
4.2 模拟滑动
4.3 模拟按键
4.4 模拟文本输入
Android Studio Unable to establish a connection to adb.
1、adb服务
2、adb端口被占(仅限Windows体系)
注意:最好单装备连接,假如多装备需要先选择装备,再执行命令。
adb 常用命令
1、表现已连接的装备列表
adb devices
scc$ adb devices
List of devices attached
X1PVWP742B device
d13d7184 device 2、进入装备
adb shell , 假如有多台装备会报错,因为不知道进入那台装备。
scc$ adb shell
adb: more than one device/emulator
scc$ adb shell
hncnbot_health_robot:/ $ 这就进来了
3、安装 APK 文件到装备
adb install <path_to_apk>
scc$ adb install /Users/scc/你真帅.apk
Performing Streamed Install
Success
scc$ 安装成功
有时报错:
scc$ /Users/scc/你真帅.apk
Performing Streamed Install
adb: failed to install /Users/scc/你真帅.apk : Failure [INSTALL_FAILED_ALREADY_EXISTS: Attempt to re-install com.ximalaya.ting.android(包名) without first uninstalling.]
使用adb install安装apk的时间,装备上已经安装过一个版本,再次安装的话,会安装失败,出现如下提示信息:INSTALL_FAILED_ALREADY_EXISTS
这时只要在命令中添加-r即可覆盖安装:
scc$ adb install -r /Users/scc/你真帅.apk
Performing Streamed Install
Success
4、卸载指定包名的应用
adb uninstall <package_name>
scc$ adb uninstall com.ximalaya.ting.android
Success
scc$ 卸载成功
4.1 卸载体系应用
adb shell pm uninstall --user 0 包名
scc$ adb uninstall com.dangbei.tvlauncher
Failure [DELETE_FAILED_INTERNAL_ERROR](卸载失败)
scc$ adb shell pm uninstall --user 0 com.dangbei.tvlauncher
Success
scc$ adb shell pm list packages
package:com.mgtv.tv
......(没有了)
5、从装备中复制文件到本地
adb push <装备路径> <本地路径>
scc$ adb pull /storage/emulated/0/DCIM/Screenshots/23.jpg /Users/scc/ThreeSDK/2.jpg
/storage/emulated/0/DCIM/Screenshots/2...ed. 34.6 MB/s (956637 bytes in 0.026s)
scc$ 复制成功
6、将本地文件复制到装备
adb pull <本地路径> <装备路径>
scc$ adb push /Users/scc/ThreeSDK/2.jpg /storage/emulated/0/DCIM/Screenshots/24.jpg
/Users/scc/ThreeSDK/2.jpg: 1 file push...d. 125.7 MB/s (956637 bytes in 0.007s
scc$ 复制成功
7、查看装备日记信息
adb logcat
- adb logcat -v time 打印log的详情日记
- adb logcat -v time > /Users/scc/ThreeSDK\log.txt 把日记输出到电脑的上查看,在窗口打印的同时,文件也会同时打印的
- adb logcat -c 清除之前的日记信息,一般在看日记前都会执行这个命令,目的过滤之前的日记方便看最新日记
- scc$ adb logcat
- --------- beginning of crash
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: FATAL EXCEPTION: RxCachedThreadScheduler-1
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: Process: com.ecare.healthhut, PID: 14628
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: io.reactivex.exceptions.UndeliverableException: The exception could not be delivered to the consumer because it has already canceled/disposed the flow or the exception has nowhere to go to begin with. Further reading: https://github.com/ReactiveX/RxJava/wiki/What's-different-in-2.0#error-handling | java.lang.UnsatisfiedLinkError: dlopen failed: library "libarcsoft_face_engine.so" not found
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at io.reactivex.plugins.RxJavaPlugins.onError(RxJavaPlugins.java:367)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:69)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at io.reactivex.internal.schedulers.ScheduledRunnable.call(ScheduledRunnable.java:57)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at java.util.concurrent.FutureTask.run(FutureTask.java:264)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:307)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1137)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:637)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at java.lang.Thread.run(Thread.java:1012)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: Caused by: java.lang.UnsatisfiedLinkError: dlopen failed: library "libarcsoft_face_engine.so" not found
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at java.lang.Runtime.loadLibrary0(Runtime.java:1077)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at java.lang.Runtime.loadLibrary0(Runtime.java:998)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at java.lang.System.loadLibrary(System.java:1661)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at com.arcsoft.face.FaceEngine.<clinit>(FaceEngine.java:876)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at com.arcsoft.face.FaceEngine.getRuntimeABI(FaceEngine.java:188)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at com.ecare.healthhut.base.RobotApplication.lambda$initFace$0(RobotApplication.java:414)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at com.ecare.healthhut.base.-$$Lambda$RobotApplication$KZ4KX66pOQkpN1C4AdF7p0_gBK4.subscribe(Unknown Source:0)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at io.reactivex.internal.operators.observable.ObservableCreate.subscribeActual(ObservableCreate.java:40)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at io.reactivex.Observable.subscribe(Observable.java:12197)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at io.reactivex.internal.operators.observable.ObservableSubscribeOn$SubscribeTask.run(ObservableSubscribeOn.java:96)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at io.reactivex.Scheduler$DisposeTask.run(Scheduler.java:578)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: at io.reactivex.internal.schedulers.ScheduledRunnable.run(ScheduledRunnable.java:66)
- 01-03 16:55:58.373 14628 14655 E AndroidRuntime: ... 6 more
- 01-03 16:57:27.947 15156 15198 E AndroidRuntime: FATAL EXCEPTION: RxCachedThreadScheduler-1
- .............
复制代码 8、重启装备
adb reboot
9、截取装备屏幕截图
adb shell screencap <file>
scc$ adb shell screencap /storage/emulated/0/DCIM/Screenshots/25.png
scc$ 截取成功
注意:后缀需要 .png 才行, .jpg 是个损坏文件(失败)。
10、屏幕分辨率
adb shell wm size
scc$ adb shell wm size
Physical size: 1080x2400
11、屏幕密度
adb shell wm density
scc$ adb shell wm density
Physical density: 440
scc$
12、表现装备的总内存、空闲内存、已用内存等信息
adb shell cat /proc/meminfo
scc$ adb shell cat /proc/meminfo
MemTotal: 11877584 kB
MemFree: 410700 kB
MemAvailable: 4044952 kB
Buffers: 2172 kB
Cached: 3426048 kB
SwapCached: 340124 kB
Active: 5482004 kB
Inactive: 2158028 kB
Active(anon): 3706288 kB
Inactive(anon): 737084 kB
Active(file): 1775716 kB
Inactive(file): 1420944 kB
Unevictable: 173480 kB
Mlocked: 173480 kB
SwapTotal: 6291452 kB
SwapFree: 3800032 kB
Dirty: 600 kB
Writeback: 0 kB
AnonPages: 4295200 kB
Mapped: 1552836 kB
Shmem: 60056 kB
KReclaimable: 673412 kB
Slab: 662508 kB
SReclaimable: 255124 kB
SUnreclaim: 407384 kB
KernelStack: 129936 kB
PageTables: 187944 kB
NFS_Unstable: 0 kB
Bounce: 0 kB
WritebackTmp: 0 kB
CommitLimit: 12230244 kB
Committed_AS: 193739488 kB
VmallocTotal: 263061440 kB
VmallocUsed: 217820 kB
VmallocChunk: 0 kB
Percpu: 11072 kB
CmaTotal: 356352 kB
CmaFree: 0 kB
scc$
- MemTotal: 总物理内存,即体系总共的内存巨细。在这个例子中是 11,877,584 kB。
- MemFree: 未被使用的物理内存。在这个例子中是 410,700 kB。
- MemAvailable: 可用物理内存,体系实际可用的内存。在这个例子中是 4,044,952 kB。
- Buffers: 缓冲区使用的内存。在这个例子中是 2,172 kB。
- Cached: 缓存的内存,包括文件体系缓存等。在这个例子中是 3,426,048 kB。
- SwapCached: 在交换空间中的缓存。在这个例子中是 340,124 kB。
- Active: 活跃的内存,正在使用或者近来被使用的内存。在这个例子中是 5,482,004 kB。
- Inactive: 不活跃的内存,近来没有被使用的内存。在这个例子中是 2,158,028 kB。
- AnonPages: 匿名页,被进程使用的非文件 backed 的页。在这个例子中是 4,295,200 kB。
- Mapped: 映射的内存,包括文件和装备映射的页。在这个例子中是 1,552,836 kB。
- Shmem: 共享内存,用于进程间通信。在这个例子中是 60,056 kB。
- Slab: 内核数据结构缓存的巨细。在这个例子中是 662,508 kB。
- CommitLimit: 内核允许使用的最大内存。在这个例子中是 12,230,244 kB。
- Committed_AS: 当前体系为分配的页面的总和,即当前体系答应提供的内存巨细。在这个例子中是 193,739,488 kB。
- VmallocTotal: 假造内存总巨细。在这个例子中是 263,061,440 kB。
- VmallocUsed: 已使用的假造内存。在这个例子中是 217,820 kB。
- CmaTotal: 连续内存分配(Contiguous Memory Allocator)总巨细。在这个例子中是 356,352 kB。
- CmaFree: 空闲的连续内存分配。在这个例子中是 0 kB。
13、应用的内存使用情况
adb shell dumpsys meminfo <package_name> 此中,<package_name> 是应用程序的包名
- scc$ adb shell dumpsys meminfo com.charme.starnote
- Applications Memory Usage (in Kilobytes):
- Uptime: 593900112 Realtime: 766335532
- ** MEMINFO in pid 1050 [com.charme.starnote] **
- Pss Private Private SwapPss Rss Heap Heap Heap
- Total Dirty Clean Dirty Total Size Alloc Free
- ------ ------ ------ ------ ------ ------ ------ ------
- Native Heap 2110 2096 0 34331 3496 50988 47656 3331
- Dalvik Heap 2756 2728 0 3071 4580 13539 5347 8192
- Dalvik Other 2291 1524 0 2904 4184
- Stack 432 432 0 1324 444
- Ashmem 9 0 0 0 836
- Gfx dev 13764 13764 0 0 13764
- Other dev 21 0 20 0 440
- .so mmap 2527 332 216 1 37740
- .jar mmap 3583 0 1508 0 46120
- .apk mmap 2377 8 968 0 7028
- .ttf mmap 581 0 0 0 8928
- .dex mmap 16258 60 15680 0 18308
- .oat mmap 29 0 0 0 2296
- .art mmap 2232 2084 0 4374 11992
- Other mmap 131 8 16 0 1272
- GL mtrack 384 384 0 0 384
- Unknown 121 116 0 673 528
- TOTAL 96284 23536 18408 46678 162340 64527 53003 11523
-
- App Summary
- Pss(KB) Rss(KB)
- ------ ------
- Java Heap: 4812 16572
- Native Heap: 2096 3496
- Code: 18788 121920
- Stack: 432 444
- Graphics: 14148 14148
- Private Other: 1668
- System: 54340
- Unknown: 5760
-
- TOTAL PSS: 96284 TOTAL RSS: 162340 TOTAL SWAP PSS: 46678
-
- Objects
- Views: 483 ViewRootImpl: 1
- AppContexts: 11 Activities: 2
- Assets: 31 AssetManagers: 0
- Local Binders: 40 Proxy Binders: 51
- Parcel memory: 18 Parcel count: 50
- Death Recipients: 3 OpenSSL Sockets: 2
- WebViews: 0
-
- SQL
- MEMORY_USED: 202
- PAGECACHE_OVERFLOW: 64 MALLOC_SIZE: 46
-
- DATABASES
- pgsz dbsz Lookaside(b) cache Dbname
- 4 60 119 21/29/14 /data/user/0/com.charme.starnote/databases/bugly_db_
- 4 56 32 1/22/2 /data/user/0/com.charme.starnote/databases/com.google.android.datatransport.events
- scc$ 结束
复制代码 14、详细的内存信息
adb shell dumpsys meminfo
提供详细的内存信息,包括应用程序、体系进程和缓存的内存使用情况。输出会包括各个应用程序的内存使用统计,缓存和体系进程的内存信息等。
- gongtiancideMacBook-Pro:~ scc$ adb shell dumpsys meminfo
- Applications Memory Usage (in Kilobytes):
- Uptime: 591674632 Realtime: 763964690
- Total RSS by process:
- 737,104K: system (pid 2029)
- 653,604K: com.UCMobile (pid 19848 / activities)
- 618,964K: com.tencent.mm (pid 9209)
- 515,708K: com.android.systemui (pid 3227)
- 418,092K: com.miui.home (pid 3255 / activities)
- 346,024K: com.android.camera (pid 31626)
- 304,284K: com.UCMobile:privileged_process0 (pid 28869)
- 284,884K: com.UCMobile:gpu_process (pid 28923)
- 283,600K: com.UCMobile:privileged_process1 (pid 29578)
- 269,688K: com.UCMobile:MediaPlayerService (pid 32226)
- 256,704K: com.android.phone (pid 3220)
- 。。。。。。
- Total RSS by OOM adjustment:
- 1,083,408K: Native
- 140,024K: surfaceflinger (pid 1247)
- 84,732K: android.hardware.camera.provider@2.4-service_64 (pid 1028)
- 75,088K: zygote64 (pid 902)
- 45,664K: webview_zygote (pid 3116)
- 34,320K: zygote (pid 903)
- 。。。。。。
- Total RSS by category:
- 3,208,500K: .jar mmap
- 2,955,536K: .so mmap
- 1,979,384K: Native
- 1,911,004K: .art mmap
- 1,589,472K: Dalvik
- 1,292,136K: .oat mmap
- 1,206,096K: .dex mmap
- 464,020K: .apk mmap
- 442,932K: Dalvik Other
- 323,448K: EGL mtrack
- 269,356K: Unknown
- 260,440K: Other mmap
- 221,244K: .ttf mmap
- 。。。。。。
- Total PSS by process:
- 929,598K: com.UCMobile (pid 19848 / activities)
- 502,455K: com.tencent.mm (pid 9209)
- 477,049K: com.android.systemui (pid 3227)
- 446,290K: system (pid 2029)
- 428,744K: com.miui.home (pid 3255 / activities)
- 232,065K: com.android.camera (pid 31626)
- 202,087K: com.sohu.inputmethod.sogou.xiaomi (pid 8357)
- 。。。。。。
- Total PSS by OOM adjustment:
- 782,009K: Native
- 142,311K: surfaceflinger (pid 1247)
- 133,713K: android.hardware.camera.provider@2.4-service_64 (pid 1028)
- 34,375K: vendor.qti.hardware.display.composer-service (pid 1067)
- 25,425K: android.hardware.audio.service (pid 1019)
- 23,895K: zygote (pid 903)
- 。。。。。。
- Total RAM: 11,877,584K (status normal)
- Free RAM: 5,368,689K ( 958,081K cached pss + 4,028,040K cached kernel + 382,568K free)
- ION: 489,328K ( 95,960K mapped + 393,368K unmapped + 0K pools)
- GPU: 0K
- Used RAM: 8,547,100K (7,276,352K used pss + 1,270,748K kernel)
- Lost RAM: 1,028,410K
- ZRAM: 736,588K physical used for 2,491,932K in swap (6,291,452K total swap)
- Tuning: 256 (large 512), oom 1,451,520K, restore limit 107,520K (high-end-gfx)
- scc$
复制代码
- Total RAM: 总共的物理内存。在这个例子中是 11,877,584KB(约莫 11.33 GB)。
- Free RAM: 可用的物理内存。在这个例子中是 5,368,689KB(约莫 5.12 GB)。
- Cached PSS: 缓存的进程共享内存。
- Cached Kernel: 缓存的内核占用的内存。
- Free: 未被使用的空闲内存。
- ION: ION 内存使用情况。
- Mapped: 已映射的 ION 内存。
- Unmapped: 未映射的 ION 内存。
- Pools: ION 内存池中的内存。
- GPU: GPU 占用的内存,这里是 0K。
- Used RAM: 已使用的物理内存,包括应用程序使用的 PSS(Proportional Set Size,按照进程占用物理内存的比例分配的内存)和内核占用的内存。在这个例子中是 8,547,100KB。
- Lost RAM: 由于各种缘故原由丢失的内存,即未能被体系正常使用的内存。
- ZRAM: 压缩内存(ZRAM)的使用情况。
- Physical used: 物理内存中 ZRAM 实际使用的部分。
- In swap: 在交换空间中的 ZRAM 使用情况。
- Total swap: 总的交换空间巨细。
- Tuning: 调解参数,包括内存的分配策略、OOM(Out of Memory)的阈值等。
15、查看内存信息
adb shell free
表现内存使用情况。包括物理内存和交换空间的总量、已使用和空闲量。
- scc$ adb shell free
- total used free shared buffers
- Mem: 12162646016 11356925952 805720064 64028672 2347008
- -/+ buffers/cache: 11354578944 808067072
- Swap: 6442446848 3425431552 3017015296
- scc$
复制代码
- Mem(内存):
- total: 总物理内存为 12,162,646,016 字节(约莫 11.32 GB)。
- used: 已使用的物理内存为 11,356,925,952 字节(约莫 10.56 GB)。
- free: 空闲的物理内存为 805,720,064 字节(约莫 0.75 GB)。
- shared: 共享内存为 64,028,672 字节。
- buffers: 缓冲区使用了 2,347,008 字节。
- -/+ buffers/cache:
- 这个部分提供了经过缓存和未经缓存的内存使用情况。
- buffers/cache 是内存中用于缓存的部分,当体系需要更多内存时,这部分可以被释放。
- 113,545,789,44 字节 是经过缓存或者说除去缓存后的已使用内存。
- 808,067,072 字节 是经过缓存或者说除去缓存后的可用内存。
- Swap(交换空间):
- total: 交换空间总巨细为 6,442,446,848 字节(约莫 6 GB)。
- used: 当前使用的交换空间为 3,425,431,552 字节。
- free: 可用的交换空间为 3,017,015,296 字节。
16、查看电池信息
adb shell dumpsys battery
scc$ adb shell dumpsys battery
Current Battery Service state:
AC powered: true
USB powered: false
Wireless powered: false
Max charging current: 1350000
Max charging voltage: 5000000
Charge counter: 2996529
status: 2
health: 2
present: true
level: 100
scale: 100
voltage: 4456
temperature: 340
technology: Li-poly
17、查看CPU信息
adb shell cat /proc/cpuinfo
- scc$ adb shell cat /proc/cpuinfo
- processor : 0
- BogoMIPS : 48.00
- Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp
- CPU implementer : 0x41
- CPU architecture: 8
- CPU variant : 0x2
- CPU part : 0xd05
- CPU revision : 0
- processor : 1
- BogoMIPS : 48.00
- Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp
- CPU implementer : 0x41
- CPU architecture: 8
- CPU variant : 0x2
- CPU part : 0xd05
- CPU revision : 0
- processor : 2
- BogoMIPS : 48.00
- Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp
- CPU implementer : 0x41
- CPU architecture: 8
- CPU variant : 0x2
- CPU part : 0xd05
- CPU revision : 0
- processor : 3
- BogoMIPS : 48.00
- Features : fp asimd evtstrm aes pmull sha1 sha2 crc32 atomics fphp asimdhp cpuid asimdrdm lrcpc dcpop asimddp
- CPU implementer : 0x41
- CPU architecture: 8
- CPU variant : 0x2
- CPU part : 0xd05
- CPU revision : 0
- Hardware : Rockchip RK3566 RK817 TABLET LP4X Board
- Serial : 86dfc3e7b1f23439
复制代码 此中 processor 的数量代表这有几个处理器 这里是4个 也就是4核。
Hardware 表示CPU型号:

18、单独查看属性
adb shell getprop <属性> ,例如 :
18.1 查看装备型号
adb shell getprop ro.product.model
scc$ adb shell getprop ro.product.model
M2012K11AC
18.2 查看 Android 版本
adb shell getprop ro.build.version.release
scc$ adb shell getprop ro.build.version.release
13
属性 | 寄义 | ro.build.version.sdk | SDK 版本 | ro.build.version.release | Android 体系版本 | ro.build.version.security_patch | Android 安全补丁程序级别 | ro.product.model | 型号 | ro.product.brand | 品牌 | adb shell getprop ro.debuggable | 是否已 root | persist.sys.isUsbOtgEnabled | 是否支持 OTG | dalvik.vm.heapsize | 每个应用程序的内存上限 | ro.sf.lcd_density | 屏幕密度 | ro.product.cpu.abilist | CPU 支持的 abi 列表 | ro.product.cpu.abi
| CPU 支持位数(32照旧64) | ro.product.name | 装备名 | persist.sys.locale | 装备的语言 | ro.serialno
| 序列号 | 18.2 ro.product.cpu.abilist 和 ro.product.cpu.abi 区别
ro.product.cpu.abi:
该命令返回的是海思芯片是32位照旧64位。例如,假如装备的主要 CPU 架构是 ARM,则返回的值可能是 "arm64-v8a" 或 "armeabi-v7a"。
ro.product.cpu.abilist:
该命令返回的是装备支持的全部 CPU 架构。装备可能支持多个 CPU 架构,这些架构在一个以逗号分隔的字符串中列出。
- scc$ adb shell getprop ro.product.cpu.abi
- arm64-v8a
- scc$ adb shell getprop ro.product.cpu.abilist
- arm64-v8a,armeabi-v7a,armeabi
复制代码 19、查看安装的第三方app的包名
adb shell pm list packages -3
scc$ adb shell pm list packages -3
package:com.ecare.healthhut
package:com.tencent.qqmusiccar
package:com.ximalaya.ting.android.car
package:com.qiyi.video.speaker
package:me.chunyu.ChunyuDoctor
package:com.netease.cloudmusic
scc$
20、装备全部包名(含体系)
adb shell pm list packages
gongtiancideMacBook-Pro:~ scc$ adb shell pm list packages
package:com.android.cts.priv.ctsshim
package:com.android.internal.display.cutout.emulation.corner
package:com.android.internal.display.cutout.emulation.double
package:com.android.providers.telephony
package:com.android.dynsystem
package:com.android.theme.color.amethyst
package:com.android.theme.icon.pebble
package:com.android.providers.calendar
package:com.android.providers.media
package:com.android.internal.systemui.navbar.gestural_wide_back
...
package:com.android.launcher3
package:com.android.backupconfirm
package:com.android.provision
package:com.android.statementservice
package:com.ecare.healthhut
package:com.android.cndamon
package:com.android.theme.icon_pack.sam.settings
package:com.android.settings.intelligence
package:com.android.calendar
21、查看将要启动或退出app的包名
adb shell am monitor(只有在启动或退出的时间才会打印)
scc$ adb shell am monitor
Monitoring activity manager... available commands:
(q)uit: finish monitoring
** Activity starting: com.ximalaya.ting.android.car
** Activity starting: com.ximalaya.ting.android.car
** Activity resuming: com.ximalaya.ting.android.car
** Activity starting: com.iflytek.inputmethod
** Activity starting: com.iflytek.inputmethod
** Activity resuming: com.iflytek.inputmethod
** Activity starting: com.iflytek.inputmethod
** Activity resuming: com.iflytek.inputmethod
com.ximalaya.ting.android.car 和 com.iflytek.inputmethod 就是包名,输入 q 退出。
22、关闭软件(根据包名)
adb shell am force-stop com.iflytek.inputmethod
此中 com.iflytek.inputmethod 就是要要关闭的软件包名
23、导出装备内的apk文件
- 使用 adb shell pm list packages -3 查找安装三方的的包名,假如假如要查全部 请看第22项;
- 使用“adb shell pm path”命令加上要导出的APK文件的包名。如 adb shell pm path me.chunyu.ChunyuDoctor(包名) ,将返回APK文件在装备上的路径
- 使用 adb pull 命令,后面跟上APK文件的路径和要生存的路径。如 adb pull /vendor/operator/app/chunyuyisheng/chunyuyisheng.apk /Users/scc/shenhua/ziyanapk
(查找三方应用)scc$ adb shell pm list packages -3
package:com.sohu.inputmethod.sogou
package:com.dianshijia.newlive
package:com.ecare.healthhut
package:com.qiyi.video.speaker
package:com.ximalaya.ting.android
package:me.chunyu.ChunyuDoctor
package:com.ecare.healthhutorion
(输出路径)scc$ adb shell pm path me.chunyu.ChunyuDoctor
package:/vendor/operator/app/chunyuyisheng/chunyuyisheng.apk
(导出)scc$ adb pull /vendor/operator/app/chunyuyisheng/chunyuyisheng.apk /Users/scc/shenhua/ziyanapk
/vendor/operator/app/chunyuyisheng/chu.... 14.3 MB/s (48741246 bytes in 3.258s)
scc$
24、关闭体系设置(设置App)
adb shell am force-stop com.android.settings
adb shell pm clear com.android.settings
25、查看占用内存最高的 3 个App
adb shell top -m 3
- Tasks: 910 total, 2 running, 908 sleeping, 0 stopped, 0 zombie
- Mem: 11599M total, 10587M used, 1011M free, 2M buffers
- Swap: 6143M total, 3474M used, 2669M free, 3445M cached
- 800%cpu 108%user 1%nice 48%sys 635%idle 0%iow 7%irq 2%sirq 0%host
- PID USER PR NI VIRT RES SHR S[%CPU] %MEM TIME+ ARGS
- 2969 u0_a149 20 0 6.4G 79M 52M R 100 0.6 1457:55.2 com.miui.miwall+
- 28985 u0_a235 20 0 64G 247M 247M S 12.3 2.1 5:13.35 com.dianping.v1
- 2029 system 18 -2 12G 337M 337M S 11.3 2.9 1086:51.7 system_server
复制代码 26、革新2次,返回所以程序所占内存
adb shell top -n 2
- Tasks: 914 total, 3 running, 911 sleeping, 0 stopped, 0 zombie
- Mem: 11599M total, 10603M used, 996M free, 2M buffers
- Tasks: 914 total, 2 running, 912 sleeping, 0 stopped, 0 zombie
- Mem: 11599M total, 10618M used, 981M free, 2M buffers
- Swap: 6143M total, 3415M used, 2728M free, 3465M cached
- 800%cpu 110%user 0%nice 36%sys 645%idle 0%iow 7%irq 2%sirq 0%host
- PID USER PR NI VIRT RES SHR S[%CPU] %MEM TIME+ ARGS
- 2969 u0_a149 20 0 6.4G 79M 52M R 99.6 0.6 1459:44.8 com.miui.miwall+
- 28985 u0_a235 20 0 64G 248M 248M S 11.6 2.1 5:33.96 com.dianping.v1
- 1247 system -2 -8 2.8G 35M 23M S 5.6 0.3 716:23.16 surfaceflinger
- 2029 system 18 -2 12G 337M 337M S 4.0 2.9 1086:58.9 system_server
- 32069 u0_a241 20 0 83G 236M 236M S 3.3 2.0 3:47.79 com.UCMobile
- 22937 root 20 0 0 0 0 I 2.6 0.0 0:02.89 [kworker/u16:16+
- 901 root 20 0 2.5G 7.3M 4.4M S 2.0 0.0 26:53.27 netd
- 24786 shell 20 0 2.2G 6.1M 5.0M S 1.6 0.0 0:03.47 adbd --root_sec+
- 14353 root 20 0 0 0 0 I 1.6 0.0 0:25.75 [kworker/u16:13+
- 28037 root 20 0 0 0 0 I 1.3 0.0 0:07.64 [kworker/u16:18+
- 4915 u0_a137 20 0 6.8G 45M 45M S 1.3 0.3 192:26.88 com.miui.voicet+
- 1067 system -3 -8 2.4G 492K 492K S 1.3 0.0 104:22.21 vendor.qti.hard+
- 1052 system 20 0 2.6G 4.1M 3.0M S 1.3 0.0 87:14.21 android.hardwar+
- 25877 shell 20 0 2.1G 5.5M 3.7M R 1.0 0.0 0:00.06 top -n 2
- 31906 root 20 0 0 0 0 I 1.0 0.0 0:08.80 [kworker/u16:4-+
- 409 root RT 0 0 0 0 D 1.0 0.0 84:15.57 [crtc_commit:12+
- 288 root -3 0 0 0 0 S 1.0 0.0 48:42.85 [kgsl_worker_th+
- 25179 root 0 -20 0 0 0 I 0.6 0.0 0:00.74 [kworker/u17:2-+
- 11473 root 0 -20 0 0 0 I 0.6 0.0 0:01.95 [kworker/u17:7-+
- scc$
复制代码 27、获取正在运行应用的activity
adb shell dumpsys package 包名
28、启动应用
28.1 根据报名+Activity
adb shell am start 包名/绝对activity路径
- scc$ adb shell am start com.tumuyan.fixedplay/com.tumuyan.fixedplay.MainActivity
- Starting: Intent { act=android.intent.action.MAIN cat=[android.intent.category.LAUNCHER] cmp=com.tumuyan.fixedplay/.MainActivity }
复制代码 28.2 根据包名(用monkey启动应用并输出activity)
adb shell monkey -p 包名 -v -v -v 1 | findstr "cmp="
- scc$ adb shell monkey -p com.tumuyan.fixedplay -v -v -v 1 | findstr "cmp="
- -bash: findstr: command not found
- ^[[Aargs: [-p, com.tumuyan.fixedplay, -v, -v, -v, 1]
- arg: "-p"
- arg: "com.tumuyan.fixedplay"
- arg: "-v"
- arg: "-v"
- arg: "-v"
- arg: "1"
- data="com.tumuyan.fixedplay"
- scc$
复制代码 29、查看Andriod内置浏览器WebView版本
adb shell am start -a android.intent.action.VIEW -d https://liulanmi.com/labs/core.html
adb 不常用命令
1、adb shell am <command>
执行 Activity Manager (AM) 命令,比如启动 Activity、广播等。
2、adb shell pm <command>
执行 Package Manager (PM) 命令,如安装、卸载、禁用应用等。
3、adb forward <local> <remote>
将装备端口与本地端口进行转发,用于调试和测试。
4、adb shell input <command>:
模拟用户输入,比如触摸、按键操纵等。
4.1 模拟点击屏幕坐标
adb shell input tap x y
此中,x 和 y 是屏幕上的坐标值。
4.2 模拟滑动
adb shell input swipe x1 y1 x2 y2 [duration(ms)]
此中 x1、y1 是起始点坐标,x2、y2 是终止点坐标,可选的 duration 参数表示滑动的时间(毫秒)。
4.3 模拟按键
adb shell input keyevent <key_code>
此中 key_code 是按键的代码,比如 KEYCODE_BACK 表示 返回键。
4.4 模拟文本输入
adb shell input text "android"
模拟文本输入,此中 android 是你想要输入的文本。
Android Studio Unable to establish a connection to adb.
1、adb服务
杀死adb服务:adb kill-server
重启adb服务:adb start-server
2、adb端口被占(仅限Windows体系)
netstat -aon|findstr "5037"
netstat -a -n -o |findstr "5037"
这两个命令都可以,且是Windows命令,它的作用是查找使用5037端口的进程ID。这个命令不适用于Linux、Mac或Unix体系,这就是为什么你看到“command not found”的错误。
5037 这是adb要的端口,有时间会被其他进程(程序)占用了(一般是会连接手机的软件),所以要查询是谁占用了,然后就可以Kill(停止)它;
根据上图然后输入taskkill /pid 12296/f (12296就是占用此端口的进程id),需要注意的是 有时间会查询到很多的进程(我一般选第一个,不可的话全部试一次),必须提示成功关闭才可行。
假如上面方法不可关闭电脑防火墙重启Android Studio试试。
免责声明:如果侵犯了您的权益,请联系站长,我们会及时删除侵权内容,谢谢合作!更多信息从访问主页:qidao123.com:ToB企服之家,中国第一个企服评测及商务社交产业平台。 |