我剛剛看到AppBrain網站獲取有關哪些是android市場上最受歡迎的開發庫的統計信息。如何知道在Android應用程序中使用哪些庫
http://www.appbrain.com/stats/libraries/dev
所以我想這具有應用APK,纔有可能知道哪些是該應用程序所使用的庫。你有什麼想法如何做到這一點?
我剛剛看到AppBrain網站獲取有關哪些是android市場上最受歡迎的開發庫的統計信息。如何知道在Android應用程序中使用哪些庫
http://www.appbrain.com/stats/libraries/dev
所以我想這具有應用APK,纔有可能知道哪些是該應用程序所使用的庫。你有什麼想法如何做到這一點?
有幾種逆向工程工具可以用來查看apk的內容。下面是一些例子
https://code.google.com/p/android-apktool/
https://code.google.com/p/dex2jar
而且它的好,記住,當你開發你的應用程序,除非你混淆(你可以使用Proguard的這個)你的代碼很容易得到保持你的源代碼來自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
等等
而且到f在庫中,它獲取未加密的資源文件夾列表,並將文件路徑與先前保存的模式進行比較。
我確信appbrain不會逆向工程,以找出使用什麼庫..應該是其他方式.. – Tarun
我不知道appbrain是如何做到這一點,但這些工具可以讓你看到apk裏面是什麼,因此也使用了什麼庫 – Simon