最近一个项目 发现之前的 混淆加密不好使了。总结了一下既往对大家有用
废话少说直接 上步骤。(把大象放冰箱里)
请无限参考这篇文章: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.** {*;}
c。要声明一下用到过得第三方jar包 不声明就混淆了 然后调用的时候找不到就跪了
-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
这么多的jar包。和so文件。可以直接无脑的在里面声明就行了
你们用呢 直接改我解释的这两段代码 其他的就不用管了。
其实其他的就是从以前版本的config.cfg里面考过来的。
好了这样配置完你们的代码应该就可以混淆了。简单吧。
把大象放冰箱里里拢共分san步。