获取Android APK使用的第三方库列表
有没有一种方法可以在不访问源代码的情况下获取Android APK文件正在使用的第三方库的列表 我正在考虑两个选项: 1。使用LibRadar等工具进行检测。然而,据我所知,它使用基于签名的检测,因此并不全面 2.使用jadx对APK文件进行反编译,并手动遍历所有不是应用程序包名称的源文件夹 例如,如果我的应用程序是com.myapp,我将遍历com/myapp之外的所有源文件夹 据我所知,这方面存在两个问题: a.模糊化的库将有模糊化的名称,因此我将有一个 检测为a.a.a、a.a.b等的一组库 我不知道在哪里停。例如,库的包名可能是 com.somelibrary,但主目录下可能有多个子文件夹 文件夹,例如com/somelibrary/a、com/somelibrary/b等。我没有 了解库的根文件夹是什么的方法获取Android APK使用的第三方库列表,android,libraries,Android,Libraries,有没有一种方法可以在不访问源代码的情况下获取Android APK文件正在使用的第三方库的列表 我正在考虑两个选项: 1。使用LibRadar等工具进行检测。然而,据我所知,它使用基于签名的检测,因此并不全面 2.使用jadx对APK文件进行反编译,并手动遍历所有不是应用程序包名称的源文件夹 例如,如果我的应用程序是com.myapp,我将遍历com/myapp之外的所有源文件夹 据我所知,这方面存在两个问题: a.模糊化的库将有模糊化的名称,因此我将有一个 检测为a.a.a、a.a.b等的一组
是否有一种一致、准确的方法可以列出没有上述限制的第三方库?好问题。作为项目的一部分,我一直在研究同一个问题。你提到的两种方法是我所知道的唯一选择。我的结论是,没有一种方法是全面的。但是,使用Github上提供的Libradar源代码,您可以创建您认为缺少的库的签名,并将其添加到数据集中。但是,要做到这一点,您需要一个包含这些库的应用程序数据集。如果您的目标是只从一个APK中查找库,那么这将是大量的工作,但如果您使用的是更大的数据集,这将是有益的