美文网首页
混淆样子

混淆样子

作者: youmu178 | 来源:发表于2016-01-14 14:46 被阅读1014次

用到了一库,混淆的时候编译会出问题,特此写下我用到过的混淆代码

  • Fragement
#如果引用了v4或者v7包
# Keep the support library
-keep class android.support.v4.** { *; }
-keep interface android.support.v4.** { *; }
# Keep the support library
-keep class android.support.v7.** { *; }
-keep interface android.support.v7.** { *; }
  • ButterKnife 6.0
    -keep class butterknife.** { *; } 
    -dontwarn butterknife.internal.**
    -keep class **$$ViewInjector { *; }
    -keepclasseswithmembernames class * {
            @butterknife.* <fields>;
    }
    -keepclasseswithmembernames class * {
       @butterknife.* <methods>;
    }

-ButterKnife 7.0

-keep class butterknife.** { *; }
-dontwarn butterknife.internal.**
-keep class **$$ViewBinder { *; }
-keepclasseswithmembernames class * {  
   @butterknife.* <fields>;
}
-keepclasseswithmembernames class * {   
 @butterknife.* <methods>;
}
  • ActiveAndroid
 -libraryjars libs/activeandroid.jar
 -dontwarn com.activeandroid.**
 -keep class com.activeandroid.** {*;}
  • EventBus
   -keepclassmembers class ** {
       public void onEvent*(**);
    }
    # Only required if you use AsyncExecutor
    -keepclassmembers class * extends de.greenrobot.event.util.ThrowableFailureEvent {
       <init>(java.lang.Throwable);
    }
  • Gson
    ## GSON 2.2.4 specific rules ##
    # Gson uses generic type information stored in a class file when working with fields. Proguard
    # removes such information by default, so configure it to keep all of it.
    -keepattributes Signature
    # For using GSON @Expose annotation
    -keepattributes *Annotation*
    # Gson specific classes
    -keep class sun.misc.Unsafe { *; }
    -keep class com.google.gson.stream.** { *; }
    # Application classes that will be serialized/deserialized over Gson 
    -keep class com.sunloto.shandong.bean.** { *; }
  • Retrofit
    -dontwarn retrofit.**
    -keep class retrofit.** { *; }
    -keepattributes Signature
    -keepattributes Exceptions
  • Picasso
  -dontwarn com.squareup.okhttp.**
  • pingyin4j
    -dontwarn net.soureceforge.pinyin4j.**
    -dontwarn demo.**
    -libraryjars libs/pinyin4j-2.5.0.jar
    -keep class net.sourceforge.pinyin4j.** { *;}
    -keep class demo.** { *;}
  • 华为push
    -libraryjars libs/CloudPush_SDK_V2509_hi.jar
    -dontwarn com.huawei.**
    -keep class com.huawei.** {*;}
  • 友盟统计
   -keepclassmembers class * {
        public <init>(org.json.JSONObject);
    }
    -keep public class [您的应用包名].R$*{
        public static final int *;
    }
    -keepclassmembers enum * {
        public static **[] values();
        public static ** valueOf(java.lang.String);
    }
  • 友盟自动更新
    -keep public class [您的应用包名].R$*{
       public static final int *;
    }
    -keep public class com.umeng.fb.ui.ThreadView {
    }
    如果仍存在问题,可以再做如下操作:
    # 添加第三方jar包
    -libraryjars libs/umeng-sdk.jar
    # 以下类过滤不混淆  
    -keep public class * extends com.umeng.**
    # 以下包不进行过滤 
    -keep class com.umeng.** { *; }
  • 友盟用户反馈
    -keepclassmembers class * {
        public <init>(org.json.JSONObject);
    }
    #把[您的应用包名] 替换成您自己的包名,如"com.example.R$*"。
    -keep public class 您的应用包名.R$*{
       public static final int *;
    }
  • 友盟消息推送
    -dontshrink
    -keep,allowshrinking class com.umeng.message.* {
        public <fields>;
        public <methods>;
    }
    -keep,allowshrinking class com.umeng.message.protobuffer.MessageResponse$PushResponse$Info {
        public <fields>;
        public <methods>;
    }
    -keep,allowshrinking class com.umeng.message.protobuffer.MessageResponse$PushResponse$Info$Builder {
        public <fields>;
        public <methods>;
    }
    -keep,allowshrinking class org.android.agoo.impl.*{
        public <fields>;
        public <methods>;
    }
    -keep,allowshrinking class org.android.agoo.service.* {*;}
    -keep,allowshrinking class org.android.spdy.**{*;}
    -keep public class [应用包名].R$*{
        public static final int *;
    }
  • 极光推送
-dontwarn cn.jpush.**
-keep class cn.jpush.** { *; }
  • 其他
# 源文件和行号的信息不混淆
-keepattributes SourceFile,LineNumberTable

相关文章

  • 混淆样子

    用到了一库,混淆的时候编译会出问题,特此写下我用到过的混淆代码 Fragement ButterKnife 6.0...

  • js反混淆

    颜文字反混淆颜文字混淆.png 混淆2混淆2.png

  • Android Proguard混淆小记

    混淆的基本语法 常规不可混淆的代码 1.腾讯系列SDK混淆 2.GSON混淆 3.ButterkKnife混淆 4...

  • Android 混淆相关

    Android 混淆原则 混淆 ProGuard常用语法 混淆基本指令

  • Android打包那些事

    目录 一.混淆(Proguard) 混淆是打包过程中最重要的流程之一,这里所说的的混淆是包括代码混淆和资源的“混淆...

  • 2018-04-21FCN结果分析

    一、混淆矩阵confusion matrix 1,混淆矩阵 2,分类器评估方法:准确率和混淆矩阵*** 使用混淆矩...

  • Android混淆(Proguard)详解

    目录: 1、混淆的作用及好处2、混淆的原理3、混淆的具体使用--- 3.1、混淆的基本语法--- 3.2、...

  • APP常用的安全技巧

    代码中使用混淆,不要使用默认AB混淆,可以使用空白混淆 混淆配置中去除:-keepattributes Sourc...

  • Android代码混淆

    待整理。。。 参考: Android混淆从入门到精通 Android代码混淆之混淆规则 代码混淆规则配置文件:pr...

  • 不能使用混淆的情况

    不能使用混淆的情况 反射使用的元素 最好不要让一些Bean对象混淆 四大组件不能混淆 注解不能混淆 不能混淆枚举中...

网友评论

      本文标题:混淆样子

      本文链接:https://www.haomeiwen.com/subject/ggxhkttx.html