android - 如何检测另一个应用程序的存在?

标签 android security threat-model

这是理论上的情况:

  • 我正在编写一个应用程序来检测手机上是否有其他人
  • 目标应用程序的类路径、名称、Activity 名称等已随机化,我不能只检查它是否存在(它在语义上相同但在句法上 独一无二)
  • 我有手机的root权限
  • 该应用程序是开源的,并且(除了程序包名称和应用程序名称)我对它一无所知。
  • 应用程序不生成日志输出。

我一直在想办法检测手机上是否存在这个其他应用程序(假设它实际上不时运行),以下方法是否可行?

  • 定期查找内存中是否存在某些类
  • 在每个已安装的 apk 中搜索已知的编译代码块
  • 通过定期检查设备的内存来检测正在运行的应用程序,并查找与该应用程序匹配的使用模式

在这种情况下,是否还有其他检测其他应用的方法?

最佳答案

使用PackageManager .它有一个方法返回有关所有应用程序的信息,安装在系统上:getInstalledPackages() .

关于android - 如何检测另一个应用程序的存在?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5457631/

相关文章:

javascript - 威胁模型文档

android - 如何将温度值(从服务)检索到 AppWidgetProvider

android - 如何为 Android 制作自定义地点选择器

android - 如何从 firebase 检索所有数据

Android Kotlin - 捕获异常仍然使程序崩溃

用户帐户的 PHP cookie 和 session 安全性

java - 处理ResourceServer中的spring security认证异常

c# - 找到可缓存的 SSL 页面、捆绑和缩小