小男孩‘自慰网亚洲一区二区,亚洲一级在线播放毛片,亚洲中文字幕av每天更新,黄aⅴ永久免费无码,91成人午夜在线精品,色网站免费在线观看,亚洲欧洲wwwww在线观看

分享

Android Studio配置反混淆

 小樣樣樣樣樣樣 2021-12-17


為什么要混淆

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

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

  2. dex2jar 這個工具將dex文件轉成jar
    下載地址:http:///projects/dex2jar/files/
    用這個工具的命令 轉jar

d2j-dex2jar classes.dex
  1. jd-gui 這個工具用于將jar轉成java代碼
    下載地址:http://jd./
    用這個工具打開classes-dex2jar.jar
    20201028220024

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

AS里面配置混淆

配置混淆

在build.gradle里面配置

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

打包后解出來的jar:
20201028221119

20201028221154

配置混淆規(guī)則

-dontusemixedcaseclassnames 表示混淆時不使用大小寫混合類名。

-dontskipnonpubliclibraryclasses 表示不跳過library中的非public的類。

-verbose 表示打印混淆的詳細信息。

-dontoptimize 表示不進行優(yōu)化,建議使用此選項,因為根據(jù)proguard-android-optimize.txt中的描述,優(yōu)化可能會造成一些潛在風險,不能保證在所有版本的Dalvik上都正常運行。

-dontpreverify 表示不進行預校驗。這個預校驗是作用在Java平臺上的,Android平臺上不需要這項功能,去掉之后還可以加快混淆速度。

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


-keep public class com.google.vending.licensing.ILicensingService
-keep public class com.android.vending.licensing.ILicensingService
上面兩行表示不混淆上述兩個類

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

個人簡介:高級開發(fā)工程師,興趣和領域(Unity、Unreal、cocos creator、安卓終端開發(fā)、ios終端開發(fā)、音視頻開發(fā)、圖形學)

    本站是提供個人知識管理的網(wǎng)絡存儲空間,所有內(nèi)容均由用戶發(fā)布,不代表本站觀點。請注意甄別內(nèi)容中的聯(lián)系方式、誘導購買等信息,謹防詐騙。如發(fā)現(xiàn)有害或侵權內(nèi)容,請點擊一鍵舉報。
    轉藏 分享 獻花(0

    0條評論

    發(fā)表

    請遵守用戶 評論公約

    類似文章 更多