高通安卓12-在源码中查找应用的方法

1.通过搜索命令查找app

一般情况下,UI上看到的APP名称会在xml文件里面定义出来,如

搜索名字为WiGig的一个APP

执行命令

sgrep "WiGig" 2>&1|tee 1.log

将所有的搜索到的内容打印到log里面

Log里面会有一段内容

在它的前面是这段内容在源码中的位置

<string name="app_name">"WiGig\nSettings"</string>

通过这个位置,定位出相关APP所在目录

查目录中的mk文件,找出APP在源码中的实际名称

通过命令mgrep WigigSettings,找出相关的调用位置。

2.通过ADB查找app

有的APP可能搜不到,名字被修改过。

这个可以通过ADB查询包名,定位出APP位置。

如:

要查找一个叫做Qualcomm DLT的APP。通过前面的方法无法定位到APP的位置

用adb列出所有的包名

复制代码
adb shell pm list packages

这个可能是,但是不确定

通过命令

复制代码
adb shell
dumpsys package com.qualcomm.qct.dlt

定位出启动路径

复制代码
exit
adb shell am start -n com.qualcomm.qct.dlt/.MainActivity

如果手机上显示对应应用打开了,那就确定了这个包名。

还有一个定位包名的方法是

先打开要找的APP,然后查看当前窗口位置

复制代码
#查看当前app的入口 
adb shell dumpsys window | findstr "Current"

可以协助定位出包名

这个时候,再到源码里面,搜索对应的包名

3.记录一个难找的APP

有找出服务对应的apk

adb shell pm list packages -f

全局搜索这个APK

删除相关调用(PS:不用管名字,前面找错了)

相关推荐
Terrence Shen2 分钟前
Claude Code Harness 源码学习讲义
linux·学习·ubuntu
赵药师20 分钟前
dpkg: warning: files list file for package ‘libselinux1:amd64‘ missing;
linux·运维·服务器
zt1985q21 分钟前
本地部署开源内容管理系统 Typemill 并实现外部访问
运维·服务器·开源
ElevenS_it18832 分钟前
网络没完全断但业务已经受影响:「灰色故障」排查的完整方法论
运维·服务器·网络
STDD33 分钟前
Samba 文件共享:Linux 服务器与 Windows/Mac 共享文件夹
linux·服务器·windows
程序员码歌38 分钟前
别再让 AI 自由发挥了:OpenSpec 才是团队协作不跑偏的关键
android·前端·人工智能
liudanzhengxi1 小时前
CRM系统技术文章
linux·服务器·网络·人工智能·新人首发
南境十里·墨染春水1 小时前
守护进程编程流程
linux·学习
敲代码的鱼1 小时前
NFC读卡能力 支持安卓/iOS/鸿蒙 UTS插件
android·ios·uni-app
STDD1 小时前
Teeworlds / DDNet 服务器搭建:经典 2D 竞技平台游戏
服务器·游戏·github