设为首页 收藏本站
查看: 959|回复: 0

Android shell 命令总结

[复制链接]

尚未签到

发表于 2015-12-3 14:32:15 | 显示全部楼层 |阅读模式
Package Manage(PM)
  pm list packages [FILTER] 查看已安装的应用包

  • -f   显示关联的apk文件
  • -s  只在系统应用中搜索Filter
  • -3  只在第三方应用中搜索Filter
  • -d  只在disabled package搜索Filter
  • -e  只在enabled package搜索Filter
  • -i  显示installer
  • -u  uninstalled package
  • --user USERID  
  
  pm list instrumentation [TARGET-PACKAGE] 查看已安装的测试包

  • -f  显示关联的apk文件
  
  pm list features
  
  pm list permission-groups
  
  pm list permissions [GROUP]

  • -g  按组组织
  • -f  显示所有信息
  • -s  显示简述
  • -d  只显示危险权限
  • -u  只显示用户可见的
  
  pm list users
  
  pm uninstall <package>   删除应用

  • -k  保留数据和缓存
  
  pm clear <package>  清除应用数据

  • --user USERID
  
  pm path <package>  查看某个应用的apk包路径
  
  pm dump <package>  显示与包相关的系统状态信息
  
  pm install PATH

  • -l  FORWARD_LOCK
  • -r  重新安装,保留数据
  • -t  运行安装测试apk
  • -i  指定安装包名
  • -s  SDCard
  • -f  内部存储器
  • -d  允许版本降级
  
  pm get-install-location  返回当前默认安装位置
  返回值:
  0  auto
  1  内部存储
  2  外部存储
  
  pm set-install-location 0|1|2 修改默认安装位置
  
  pm enable|disable|disable-user|disable-until-used|block|unblock  [--user USERID] PACKAGE_OR_COMPONENT
  
  pm grant|revoke  PACKAGE PERMISSION  应用增减权限(必须在应用中已声明)
  
  pm create-user USER_NAME
  
  pm remove-user USER_ID
  
  pm get-max-users
  
  pm set-permission-enforced PERMISSION [true|false]
  
  pm trim-caches DESIRED_FREE_SPACE
  
  
Activity Manage(AM)
  通用选项
  --user <USER_ID> | current | all  以特定用户运行
  
  am start [options] <INTENT> 启动Activity

  • -D  调试模式
  • -W  等待启动结束
  • --start-profilter <FILE> 启动分析器,结果输出到文件
  • -P <FILE> 启动分析器,输出结果到文件,应用空闲时停止分析
  • -R <COUNT> 反复启动Count次,每次重复前,结束最上层Activity
  • -S 启动后强制停止
  • --opengl-trace 启动OpenGL函数记录
  • --user <USER_ID> | current  指定以哪个用户运行,默认为当前用户
  
  am startservice <INTENT>  启动服务
  
  am stopservice <INTENT>  停止服务
  
  am force-stop <PACKAGE>   强行停止与包相关的所有东西
  
  am kill <PACKAGE>  杀掉与包相关的进程
  
  am kill-all  杀掉所有后台进程
  
  am broadcast <INTENT>
  
  am instrument [options] <COMPONENT>

  • -r  以原始形式输出测试结果。该选项通常是在性能测试时与-e perf true一起使用
  • -p <FILE> 输出分析数据到文件
  • -w <TEST_PACKAGE/RUNNER_CLASS> 等到instrumentation结束时才返回
  • --no-window-animation
  • --user <USER_ID> | current
  • -e <testrunner_flag> <value>[,<value>…]
  <COMPMONENT>就是<TEST_PACKAGE/RUNNER_CLASS>
  
  InstrumentationTestRunner可用flag:

flag  
value
  说明
package
<full_java_package>
  执行某个java包里的测试
class
<full_class_name>
<full_class_name>#methos_name
  执行某个测试类
func
true
  执行所有InstrumentationTestCase
unit
true
  执行非InstrumentationTestCase和非PerformanceTestCase的测试类
size
small|medium|large
  运行@SmallTest,@MediumTest,@LargeTest标注的测试
  android.test.annotation包里定义了@LargeTest,@MediumTest,@SmallTest,@Smoke,和@Suppress
perf
true
  执行PerformanceTestCase
与-r配合,输出原始格式输出
debug
true
  调试模式执行测试
log
true
  
  
  <INTENT> specifications include these flags and arguments
  [-a <ACTION>] [-d <DATA_URI>] [-t <MIME_TYPE>]    android.intent.action.VIEW content://contacts/people/1  image/png
  [-c <CATEGORY> [-c <CATEGORY>] ...]  android.intent.category.APP_CONTACTS
  [-e|--es <EXTRA_KEY> <EXTRA_STRING_VALUE> ...]
  [--esn <EXTRA_KEY> ...]
  [--ez <EXTRA_KEY> <EXTRA_BOOLEAN_VALUE> ...]
  [--ei <EXTRA_KEY> <EXTRA_INT_VALUE> ...]
  [--el <EXTRA_KEY> <EXTRA_LONG_VALUE> ...]
  [--ef <EXTRA_KEY> <EXTRA_FLOAT_VALUE> ...]
  [--eu <EXTRA_KEY> <EXTRA_URI_VALUE> ...]
  [--ecn <EXTRA_KEY> <EXTRA_COMPONENT_NAME_VALUE>]
  [--eia <EXTRA_KEY> <EXTRA_INT_VALUE>[,<EXTRA_INT_VALUE...]]
  [--ela <EXTRA_KEY> <EXTRA_LONG_VALUE>[,<EXTRA_LONG_VALUE...]]
  [--efa <EXTRA_KEY> <EXTRA_FLOAT_VALUE>[,<EXTRA_FLOAT_VALUE...]]
  [-n <COMPONENT>] [-f <FLAGS>]
  [--grant-read-uri-permission] [--grant-write-uri-permission]
  [--debug-log-resolution] [--exclude-stopped-packages]
  [--include-stopped-packages]
  [--activity-brought-to-front] [--activity-clear-top]
  [--activity-clear-when-task-reset] [--activity-exclude-from-recents]
  [--activity-launched-from-history] [--activity-multiple-task]
  [--activity-no-animation] [--activity-no-history]
  [--activity-no-user-action] [--activity-previous-is-top]
  [--activity-reorder-to-front] [--activity-reset-task-if-needed]
  [--activity-single-top] [--activity-clear-task]
  [--activity-task-on-home]
  [--receiver-registered-only] [--receiver-replace-pending]
  [--selector]
  [<URI> | <PACKAGE> | <COMPONENT>]
  
  
dumpsys 
  查询系统服务,获取系统运行时状态信息
  原理:调用ServiceManager服务的listServices来查询系统注册的所有服务,并且通过checkService接口来获取服务的Binder远程代理对象,使用每个服务的dump函数来打印该服务的相关信息。
  源代码:  https://android.googlesource.com/platform/frameworks/native/+/master/cmds/dumpsys/dumpsys.cpp
  
  dumpsys  不带任何参数时,列出所有服务,并依次显示所有服务状态信息
  dumpsys | grep FILTER
  service list  显示系统服务列表
  dumpsys SERVICE [SERVICE_OPTIONS] 显示指定服务的状态信息
  dumpsys SERVICE -h  某些服务可以查看能接受的参数
  例如:
  dumpsys battery
  dumpsys wifi
  dumpsys cpuinfo
  dumpsys meminfo
    dumpsys meminfo com.xracoon.wifisetter
  dumpsys window w(indows) | grep mCurrentFocus
  dumpsys window d(disply) | grep Display
  
  
Logcat
  logcat命令格式与直接调用adb logcat相同,下面两条命令效果一样,可参考adb 命令一文中Logcat的说明。
  adb shell logcat [options] [filter...]
  adb logcat [options] [filter...]
  
调试测试相关命令
  dumpstate
  
  dmesg
  
  monkey [options] <operation_num>
  
  screenrecord [options] <file>  android4.4+
  
  screencap -p <file>
  
  
input
  input [<source>] <command> [<arg>...]
  source:
  trackball, joystick, touchnavigation, mouse, keyboard, gamepad, touchpad, dpad, stylus, touchscreen
  command和   /默认source:
command默认的source
text <string>touchscreen
keyevent [--longpress] <key code number or name> ...keyboard
tap <x> <y>touchscreen
swipe <x1> <y1> <x2> <y2>  [duration_ms]touchscreen
presstrackball
roll <dx> <dy>trackball

运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-146888-1-1.html 上篇帖子: 使用adb shell dumpsys检测Android的Activity任务栈 下篇帖子: Bash Shell read file line by line and substring
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

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