我目前正在开发 POC SDK,我需要添加一项功能来检测当前使用我的 SDK 的应用程序上是否存在任何其他第三方 SDK(来自有限列表)。
例如检测正在使用Google maps SDK。
在 Android 和 IOS 上这样做的方法是什么?
最佳答案
安卓
- 从库中选择一个类并尝试使用类加载器加载它。优点:不太可能给出误报。缺点:如果类被混淆则失败。这意味着它只能可靠地用于包含无法混淆的类的库,例如 Activity 。
- 读取 apk 文件并尝试找到库的基本包名称。优势:不会在标准问题的 protected 应用程序上失败。缺点:分析classes.dex需要额外的工具。
- 在编译时搜索库(例如使用 gradle 插件)。优点:可以在proguard和类似工具之前插入。缺点:绑定(bind)到特定的构建工具(例如gradle)。
关于android - Android和IOS上的SDK检测,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44181266/