3 回答

TA貢獻(xiàn)1807條經(jīng)驗(yàn) 獲得超9個(gè)贊

TA貢獻(xiàn)1993條經(jīng)驗(yàn) 獲得超6個(gè)贊
用戶是否能夠?qū)⑽业膽?yīng)用程序的apk文件轉(zhuǎn)換回實(shí)際代碼?
是。
人們可以使用各種工具來:
分析:你的apk
解碼/破解你的apk
然后
dex2jar
用來轉(zhuǎn)換為jar
然后使用
jadx
轉(zhuǎn)換為java
源代碼用
FDex2
傾倒了dex
文件
如果他們這樣做 - 有什么辦法可以阻止這種情況嗎?
是。幾種(可以組合)防止(某種程度)這種方式:
低級(jí)別:代碼混淆
使用Android
ProGuard
高級(jí)別:使用android強(qiáng)化場(chǎng)景
更多細(xì)節(jié)可以參考我的中文教程:安卓應(yīng)用的安全和破解

TA貢獻(xiàn)1851條經(jīng)驗(yàn) 獲得超4個(gè)贊
可以對(duì)APK文件進(jìn)行反編譯。但如果代碼被混淆,可能很難理解代碼。
ApkTool查看APK文件中的資源
提取AndroidManifest.xml和res文件夾中的所有內(nèi)容(布局xml文件,圖像,webview上使用的htmls等)
命令:
apktool.bat d sampleApp.apk
注意:您可以使用7-zip等zip實(shí)用程序來實(shí)現(xiàn)此目的。但是,它還提取所有.class文件的.smali文件。
使用dex2jar
從.apk文件生成.jar文件,我們需要JD-GUI來查看來自.jar的源代碼。
命令:
dex2jar sampleApp.apk
使用JD-GUI反編譯.jar
反編譯.class文件(在android應(yīng)用程序的情況下是混淆的,但在其他.jar文件的情況下獲得可讀的原始代碼)。也就是說,我們從應(yīng)用程序中獲取.java。
- 3 回答
- 0 關(guān)注
- 350 瀏覽
添加回答
舉報(bào)