布局混淆是最簡(jiǎn)單的混淆方法,它不改變軟件的代碼和執(zhí)行過程。 數(shù)據(jù)混淆 數(shù)據(jù)混淆是修改程序中的數(shù)據(jù)域,而對(duì)代碼段不作處理。常用的數(shù)據(jù)混淆方式有合并變量、分割變量、數(shù)組重組、字符串加密等。
創(chuàng)新互聯(lián)建站是一家專業(yè)提供安源企業(yè)網(wǎng)站建設(shè),專注與成都網(wǎng)站制作、成都做網(wǎng)站、HTML5、小程序制作等業(yè)務(wù)。10年已為安源眾多企業(yè)、政府機(jī)構(gòu)等服務(wù)。創(chuàng)新互聯(lián)專業(yè)網(wǎng)絡(luò)公司優(yōu)惠進(jìn)行中。
缺省情況下,proguard會(huì)混淆所有代碼,但是下面幾種情況是不能改變java元素的名稱,否則就會(huì)導(dǎo)致程序出錯(cuò)。
Project target.target=android-16 復(fù)制代碼 以上的配置信息即是 project.properties 文件中內(nèi)容,藍(lán)色文字為我們?cè)诖a混淆過程中需要添加的配置信息,其中:sdk.dir 為你在當(dāng)前機(jī)器上 SDK 的安裝路徑。
1、android源碼被混淆了還原方法為:得到 classes.dex文件;直接用機(jī)器上的解壓軟件 打開 .apk 文件,解壓出 classes.dex 文件。
2、因?yàn)槭菍?duì)接口名進(jìn)行替換,如果出現(xiàn)混淆問題的話,log里面一定會(huì)有類似 這個(gè)時(shí)候只需要對(duì)相關(guān)接口進(jìn)行例外(-keep)即可,然后用android-studio,直接打開或者dex2jar進(jìn)行反解可以看到相關(guān)的接口是否被簡(jiǎn)單替換。
3、運(yùn)行apktool.bat d xxx.apk,把a(bǔ)pk反編譯成smali 如果想要進(jìn)一步查看源碼,可下載smali2java 使用smali文件的文件名進(jìn)行分析,如果存在1個(gè)或1個(gè)以上的資源類的smali文件,就可以證明該apk沒有被混淆過。
4、代碼編譯成class文件代碼打成jar包混淆jar包用jar包生成classes.dexresources.ap_生成apk以及簽名只不過工具幫我們一次性全做了,如果你要寫批處理來做,就要按上面的步驟來做了。
1、如果要對(duì)apk進(jìn)行混淆,你要先告知gradle這個(gè)app需要混淆,并告知其混淆規(guī)則。告知gradle需要混淆的代碼 在Project/app/build.gradle中把minifyEnabled設(shè)置為true,表示說打包時(shí)需要執(zhí)行混淆操作。
2、設(shè)置minifyEnabled true,就會(huì)在打包的時(shí)候進(jìn)行代碼混淆處理. 其中proguard-android.txt不用管,在sdk目錄里面,主要是配置了proguard.cfg文件。
3、運(yùn)行apktool.bat d xxx.apk,把a(bǔ)pk反編譯成smali 如果想要進(jìn)一步查看源碼,可下載smali2java 使用smali文件的文件名進(jìn)行分析,如果存在1個(gè)或1個(gè)以上的資源類的smali文件,就可以證明該apk沒有被混淆過。
4、兩種方式,一種開發(fā)工具eclipse,還有就是用apktool工具。 I、只要Run As Android Application 過,到工作目錄的bin文件夾下就能找到與項(xiàng)目同名的apk文件。
1、包名 package com.example.test類名 public class WebAppInterface{}加上完整的包名才行。
2、預(yù)防混淆 預(yù)防混淆一般是針對(duì)專用的反編譯器設(shè)計(jì)的,目的就是預(yù)防被這類反編譯器反編譯。他是利用特定的反編譯器或反混淆器的弱點(diǎn)進(jìn)行專門設(shè)計(jì)。
3、在proguard-project.txt文件中添加不需要混淆的類和第三方的jar包 這個(gè)是保持自己包中不需要混淆的類,如果有些類調(diào)用了jni也不需要混淆,不然會(huì)出錯(cuò)。
4、簡(jiǎn)單來說,Android 進(jìn)行ProGuard,可以起到壓縮,混淆,預(yù)檢,優(yōu)化的功能,雖然不能說更安全但還是一個(gè)不容忽視的環(huán)節(jié)。
5、public static final android.os.Parcelable$Creator *;} 已經(jīng)嘗試的方案:方案一: 加入-ignorewarnings 可以正常打包了。 能過濾掉警告信息。
本文題目:android混淆保護(hù) android混淆后怎么反編譯
標(biāo)題URL:http://muchs.cn/article0/dgjhdoo.html
成都網(wǎng)站建設(shè)公司_創(chuàng)新互聯(lián),為您提供品牌網(wǎng)站建設(shè)、小程序開發(fā)、網(wǎng)站設(shè)計(jì)公司、搜索引擎優(yōu)化、企業(yè)建站、App開發(fā)
聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權(quán)請(qǐng)盡快告知,我們將會(huì)在第一時(shí)間刪除。文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如需處理請(qǐng)聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時(shí)需注明來源: 創(chuàng)新互聯(lián)