欧美bbbwbbbw肥妇,免费乱码人妻系列日韩,一级黄片

Android Studio配置反混淆的實(shí)現(xiàn)

 更新時(shí)間:2020年10月29日 11:27:17   作者:wlxklyh  
這篇文章主要介紹了Android Studio如何混淆的實(shí)現(xiàn),文中通過(guò)示例代碼介紹的非常詳細(xì),對(duì)大家的學(xué)習(xí)或者工作具有一定的參考學(xué)習(xí)價(jià)值,需要的朋友們下面隨著小編來(lái)一起學(xué)習(xí)學(xué)習(xí)吧

Android Studio如何混淆

為什么要混淆

了解安卓程序編譯的會(huì)知道 其實(shí)我們的apk并不是很安全,從apk從可以解包出,步驟:

將apk文件改成zip結(jié)尾 然后解壓zip 然后就會(huì)發(fā)現(xiàn)里面有一個(gè)classes.dex

dex2jar 這個(gè)工具將dex文件轉(zhuǎn)成jar
下載地址:http://sourceforge.net/projects/dex2jar/files/
用這個(gè)工具的命令 轉(zhuǎn)jar

d2j-dex2jar classes.dex

jd-gui 這個(gè)工具用于將jar轉(zhuǎn)成java代碼
下載地址:http://jd.benow.ca/
用這個(gè)工具打開(kāi)classes-dex2jar.jar

因此最簡(jiǎn)單的就是把java混淆了,讓別人看不懂

AS里面配置混淆

配置混淆

在build.gradle里面配置

release {
  minifyEnabled true //用于設(shè)置是否啟用混淆 
  proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
}

打包后解出來(lái)的jar:

配置混淆規(guī)則

-dontusemixedcaseclassnames 表示混淆時(shí)不使用大小寫(xiě)混合類(lèi)名。

-dontskipnonpubliclibraryclasses 表示不跳過(guò)library中的非public的類(lèi)。

-verbose 表示打印混淆的詳細(xì)信息。

-dontoptimize 表示不進(jìn)行優(yōu)化,建議使用此選項(xiàng),因?yàn)楦鶕?jù)proguard-android-optimize.txt中的描述,優(yōu)化可能會(huì)造成一些潛在風(fēng)險(xiǎn),不能保證在所有版本的Dalvik上都正常運(yùn)行。

-dontpreverify 表示不進(jìn)行預(yù)校驗(yàn)。這個(gè)預(yù)校驗(yàn)是作用在Java平臺(tái)上的,Android平臺(tái)上不需要這項(xiàng)功能,去掉之后還可以加快混淆速度。

-keepattributes *Annotation* 表示對(duì)注解中的參數(shù)進(jìn)行保留。


-keep public class com.google.vending.licensing.ILicensingService
-keep public class com.android.vending.licensing.ILicensingService
上面兩行表示不混淆上述兩個(gè)類(lèi)

-keep class com.tencent.wns.config.ConfigManager {*;}
上面一行表示不混淆這整個(gè)類(lèi)

到此這篇關(guān)于Android Studio如何混淆的實(shí)現(xiàn)的文章就介紹到這了,更多相關(guān)Android Studio 混淆內(nèi)容請(qǐng)搜索腳本之家以前的文章或繼續(xù)瀏覽下面的相關(guān)文章希望大家以后多多支持腳本之家!

相關(guān)文章

最新評(píng)論