【问题标题】:Determine which SDKs are used in a third-party app确定第三方应用程序中使用了哪些 SDK
【发布时间】:2018-09-29 08:29:28
【问题描述】:

我想确定应用中正在使用哪些第三方 SDK(如 Mixpanel、Google Analytics、Facebook SDK)(如果有)。有没有办法找出来?

出于此问题的目的,假设我不是应用程序的开发人员,因此我无权访问源代码。

【问题讨论】:

    标签: android sdk reverse-engineering


    【解决方案1】:

    您可以使用 Appbrain 之类的服务来找出答案。前几次查找是免费的。

    【讨论】:

      【解决方案2】:

      由于一些原因,无法可靠地枚举应用程序使用的库。

      主要原因是混淆:如果用户打开 Proguard 或 R8,他们将重命名库的类,可能以使它们无法识别的方式。

      另一个原因是,没有一个完整的现有 Android 库列表,也没有一个类名到库的映射。

      然而,如果你确实想尝试这样做,你会想要retrieve the application's class files,然后从你关心的库中寻找包名的开头(因为混淆器是不太可能重命名整个包名称,尽管它们仍然可能)。例如,如果您想查看应用程序是否使用 okhttp3,您将查看是否有 okhttp/okhttp3 文件夹(用于包 okhttp.okhttp3)。

      也许甚至可以通过查找流行的 Maven/Gradle 包列表、下载它们、提取类名并将其用作数据集来自动执行此操作。

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-03
        • 1970-01-01
        • 2012-03-07
        • 1970-01-01
        • 2012-11-29
        相关资源
        最近更新 更多