我刚刚看到 AppBrain 网站获得了有关哪些是 android 市场上最受欢迎的开发库的统计数据。
http://www.appbrain.com/stats/libraries/dev
所以我猜想拥有应用程序 apk 是有可能知道该应用程序中正在使用哪些库。你知道如何做到这一点吗?
我刚刚看到 AppBrain 网站获得了有关哪些是 android 市场上最受欢迎的开发库的统计数据。
http://www.appbrain.com/stats/libraries/dev
所以我猜想拥有应用程序 apk 是有可能知道该应用程序中正在使用哪些库。你知道如何做到这一点吗?
在构建 apk 时,所有库中的所有资源都被移动到一个“res”文件夹中,该文件夹位于 apk 中,apk 只是一个不同扩展名的 zip 文件。
我相信 appbrain 有一个来自每个库的一些资源的列表,例如:
ActionBarSherlock:/res/drawable-v11/abs__progress_medium_holo.xml
ViewPagerIndicatior:/res/color/vpi__dark_theme.xml
HoloEveryWhere:/res/drawable/btn_group_holo_dark.xml
ETC...
为了找到库,它会获取未加密的资源文件夹列表,并将文件路径与先前保存的模式进行比较。
您可以使用多种逆向工程工具来查看 apk 的内容。这里有些例子
https://code.google.com/p/android-apktool/
https://code.google.com/p/dex2jar
另外,在开发应用程序时请记住,除非您混淆(您可以为此使用 Proguard)您的代码,否则很容易从 apk 中获取源代码。