服务列表有很多,这里简单介绍几种
通过下面命令可打印具体某一项服务:dumpsys service,其中service便是前面表格中的服务名
接下来主要说下dumpsys activity 用法
命令
options可选值
dumpsys activity等价于依次输出下面7条指令:
cmd可选值
命令
返回结果
上面的输出结果可以分为以下四个部分
也可以只输出某个pid或package的进程信息:
下面以AmberLocker作为实例进行分析
场景1:查询某个App所有的Service状态
解读:Service类名为com.amber.lockscreen.LockerHeartService , 包名为mobi.infolife.ezweather.locker.locker_2,baseDir(apk路径)为/data/app/mobi.infolife.ezweather.locker.locker_2-2/base.apk,dataDir((apk数据路径)
运行在进程pid=1115,进程名为进程名为mobi.infolife.ezweather.locker.locker_2,,uid=10060,还有创建时间等信息
场景2:查询某个App所有的广播状态
场景3:查询某个App所有的Activity状态
场景4:查询某个App的进程状态
格式:ProcessRecord{Hashcode pid:进程名/uid},进程pid=941,进程名为mobi.infolife.ezweather.locker.locker_2:live,uid=10060.
该进程中还有Services,Connections, Providers, Receivers,
场景5:查询栈顶Activity
dumpsys 的命令还有很多,这里就不一一列举了 。
Linux常用命令列出当前目录linux命令pm的文件
常用参数linux命令pm:
-a: 显示当前目录linux命令pm的所有文件,包含隐藏文件;
-l: 显示文件详情;
-Z: 显示文件linux命令pm的 SE Linux context 。
示例:ls -laZ [if !vml] [endif] 以 acct 为例: drwxr-xr-x:其中 d 代表该文件为目录,若为 l 则为软链接,软连接后又箭头代表其实际指向的文件 , 如etc - /system/etc 则访问 etc 实际等同访问/system/etc,留空则代表该文件为一个文件;rwxr-xr-x 代表其权限为 755,具体算法为将上述字段每 3 个分为 1 组得 rwx,r-x,r-x,凡是有字母标记的皆计数 1 , 反之为 0,得二进制 111,101 , 101 , 转为 10 进制数字即得7,5,5,即为该文件权限; root root :依次代表该文件的所有者(owner)为 root , 用户组(group)为 root , 上述属性可通过 chown 命令修改,日常替换文件需与原文件该属性维持一致; unlabeled:代表 SE Linux context 。
前往指定目录
更改文件所有者和用户组示例:chown root:root temfile 将 tmpfile文件 的所有者和用户组从 meidia:media 更改为 root:root
将文件内容显示出来 。
注意不要随便去 cat 一个很大的文件或与 log 驱动节点无关的文件,否则将造成串口输出乱码或死机?。。∈纠篶at /proc/kmsg 将打印出所有 kernel log 。
用于抓取 android logcat 打印 。
常用参数:
-v : 设置打印格式,可用选项为 brief process tag thread raw time threadtime long,我们比较常用 logcat -v time,此时抓的 log 将在每一行开头添加时间信息;
-s : 设置过滤器,过滤器的选择取决于软件中打印 log 时使用的 TAG,如
ActivityManagerService.java 中的打印使用的 TAG = ActivityManager , 则抓相关打印方法为 logcat -s ActivityManager;
-c : 清除 log 缓存,常用于清除之前的打印缓存,如复现某个必现问题 , 则可先执行 logcat -c 再抓 logcat 重现必现手法以排除无关 log 冗余信息影响问题定位; pm
包管理命令,用于管理安卓 app 应用 。
常用参数:
-l : 显示所有安装包应用 , 等同于 pm list packages
以 package:/system/priv-app/Launcher2.apk=com.android.launcher 为例:
Apk Launcher2 路径位于/system/priv-app/Launcher2.apk,其包名为 com.android.launcher
推荐阅读
- b站电台直播赚钱,b站电台主播收入
- java出现异常那段代码,java中出现的异常
- 棋牌茶楼如何营销,棋牌茶楼营销方案
- plc函数c语言应用 plc编程函数
- thinkphp生成word文档,thinkphp代码生成器
- erp系统中应收账款管理背景,在erp系统中设立应收账款的作用在于
- 台式电脑可以拍照吗怎么弄,台式电脑能不能拍照
- java订餐系统代码 java订餐系统编写
- 包含postgresql分表查询的词条