这是理论上的情况:
- 我正在编写一个应用程序来检测手机上是否有其他人
- 目标应用程序的类路径、名称、Activity 名称等已随机化,我不能只检查它是否存在(它在语义上相同但在句法上 独一无二)
- 我有手机的root权限
- 该应用程序是开源的,并且(除了程序包名称和应用程序名称)我对它一无所知。
- 应用程序不生成日志输出。
我一直在想办法检测手机上是否存在这个其他应用程序(假设它实际上不时运行),以下方法是否可行?
- 定期查找内存中是否存在某些类
- 在每个已安装的 apk 中搜索已知的编译代码块
- 通过定期检查设备的内存来检测正在运行的应用程序,并查找与该应用程序匹配的使用模式
在这种情况下,是否还有其他检测其他应用的方法?
最佳答案
使用PackageManager .它有一个方法返回有关所有应用程序的信息,安装在系统上:getInstalledPackages()
.
关于android - 如何检测另一个应用程序的存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5457631/