最近一个项目 发现之前的 混淆加密不好使了。总结了一下既往对大家有用
废话少说直接 上步骤。(把大象放冰箱里)
请无限参考这篇文章: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步。
时间: 2024-10-24 05:51:47