一分鐘 搞定你的混淆加密,一分鐘搞定
最近一個項目 發現之前的 混淆加密不好使了。總結了一下既往對大家有用
廢話少說直接 上步驟。(把大象放冰箱裡)
請無限參考這篇文章:http://blog.csdn.net/wanghao200906/article/details/45335981
1.看下面項目圖片
應該都有這兩個檔案吧。反正我是沒有config.cfg。網上都說有 。隨意了
2.配置 project.properties.
發現了吧這兩個是一樣的。直接複製好了。
3.配置proguard-project.txt
這是沒配置過得
下面是配置過得。 著急的直接複製代碼 ,再稍加改動,不著急的掃一眼代碼 再看下面解釋,都得改一下因為這是我項目的配置 跟你的不同 ,但大同小異
-optimizationpasses 5-dontusemixedcaseclassnames-dontskipnonpubliclibraryclasses-dontpreverify-ignorewarnings-verbose-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*-dontwarn-libraryjars /libs/android-support-v4.jar -libraryjars /libs/Android_SDK_component.jar-libraryjars /libs/Android_SDK.jar-libraryjars /libs/android-support-v4.jar-libraryjars /libs/baidumapapi_v2_4_2.jar-libraryjars /libs/CloudScanVirusSDK.jar-libraryjars /libs/commons-httpclient-3.1.jar-libraryjars /libs/commons-logging-1.1.jar-libraryjars /libs/commons-net-2.0-ftp.jar-libraryjars /libs/core.jar-libraryjars /libs/gson-2.0.jar-libraryjars /libs/jpush-sdk-release1.7.2.jar-libraryjars /libs/libammsdk.jar-libraryjars /libs/locSDK_3.1.jar-libraryjars /libs/phonegap.jar-libraryjars /libs/pn.jar-libraryjars /libs/proguard.jar-libraryjars /libs/signpost-commonshttp4-1.2.1.1.jar-libraryjars /libs/signpost-core-1.2.1.1.jar-libraryjars /libs/weibosdkcore.jar-libraryjars /libs/armeabi/xwork-2.0.1.jar-libraryjars /libs/armeabi-v7a/jpush-sdk-release1.7.2.jar-libraryjars /libs/armeabi/libBaiduMapSDK_v2_4_2.so-libraryjars /libs/armeabi/libcloudkill.so-libraryjars /libs/armeabi/libjpush172.so-libraryjars /libs/armeabi/liblocSDK3.so-keep class com.baidu.location.** {*;}-keep class com.google.gson.** {*;}-keep class com.baidu.** {*;}-keep class android.support.v4.** {*;}-keep public class * extends android.app.Activity-keep public class * extends android.app.Application-keep public class * extends android.app.Service-keep public class * extends android.content.BroadcastReceiver-keep public class * extends android.content.ContentProvider-keep public class * extends android.app.backup.BackupAgentHelper-keep public class * extends android.preference.Preference-keep public class com.android.vending.licensing.ILicensingService-keepclasseswithmembernames class * { native <methods>; } -keepclasseswithmembers class * { public <init>(android.content.Context, android.util.AttributeSet); } -keepclasseswithmembers class * { public <init>(android.content.Context, android.util.AttributeSet, int); } -keepclassmembers class * extends android.app.Activity { public void *(android.view.View); } -keepclassmembers enum * { public static **[] values(); public static ** valueOf(java.lang.String); } -keep class * implements android.os.Parcelable { public static final android.os.Parcelable$Creator *; }
注意:
a 。這個加上他是忽略 warnig的。反正我沒加是各種錯
-ignorewarnings
b。不要編譯jar包。搜則找不到也得報錯這是我用的libs裡面的jar包。你就都寫上吧。得聲明下jar包不然各種錯。
-keep class com.baidu.location.** {*;}
-keep class com.google.gson.** {*;}
-keep class com.baidu.** {*;}
-keep class android.support.v4.** {*;}
這句就是 不混淆 這些個類。不然的話 沒法編譯了。為什麼其他的沒寫呢。因為他們沒報錯。應該是這些類已經混淆過了 咱們在混淆就肯定報錯了。我理解的不一定對
你們用呢 直接改我解釋的這兩段代碼 其他的就不用管了。
其實其他的就是從以前版本的config.cfg裡面考過來的。
好了這樣配置完你們的代碼應該就可以混淆了。簡單吧。
把大象放冰箱裡裡攏共分san步。