Android项目:proguard混淆之常见开源项目混淆配置

本文提供了一套详细的Android应用代码混淆指南,包括Gson、greenDao、volley等库的混淆配置,以及高德地图SDK、Unity等第三方组件的混淆策略。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

1.Gson混淆

1
2
3
4
5
6
## ----------------------------------
##   ########## Gson混淆    ##########
## ----------------------------------
-keepattributes Signature 
-keep class sun.misc.Unsafe { *; } 
-keep class com.google.gson.examples.android.model.** { *; }


2.greenDao混淆

1
2
3
4
5
6
7
8
# # -------------------------------------------
# #  ######## greenDao混淆  ##########  
# # -------------------------------------------
-keep class com.manjay.housebox.greendao.** {*;}       
-keepclassmembers class extends de.greenrobot.dao.AbstractDao {
    public static java.lang.String TABLENAME;
}
-keep class **$Properties


3.volley混淆 

1
2
3
4
5
6
7
8
9
10
# # -------------------------------------------
# #  ############### volley混淆  ###############  
# # -------------------------------------------
-keep class com.android.volley.** {*;}
-keep class com.android.volley.toolbox.** {*;}
-keep class com.android.volley.Response$* { *; }
-keep class com.android.volley.Request$* { *; }
-keep class com.android.volley.RequestQueue$* { *; }
-keep class com.android.volley.toolbox.HurlStack$* { *; }
-keep class com.android.volley.toolbox.ImageLoader$* { *; }



4.sharesdk混淆

1
2
3
4
5
6
7
8
9
## ----------------------------------
##      sharesdk
## ----------------------------------
-keep class cn.sharesdk.**{*;}
-keep class com.sina.**{*;}
-keep class **.R$* {*;}
-keep class **.R{*;}
-dontwarn cn.sharesdk.**
-dontwarn **.R$*


5.UIL混淆

1
2
3
4
5
## ----------------------------------
##      UIL相关
## ----------------------------------
-keep class com.nostra13.universalimageloader.** { *; }
-keepclassmembers class com.nostra13.universalimageloader.** {*;}


6.高德地图sdk混淆

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
## ----------------------------------
##      高德地图sdk混淆
## ----------------------------------
-libraryjars   libs/android-support-v4.jar
-dontwarn android.support.v4.**    
-keep class android.support.v4.** { *; }  
-keep interface android.support.v4.app.** { *; }  
-keep public class extends android.support.v4.**  
-keep public class extends android.app.Fragment
 
-libraryjars   libs/MapApiLocation.jar
-libraryjars   libs/MapApiSearch.jar
-libraryjars   libs/Android_Map_V2.0.4.jar
 
-dontwarn com.amap.api.**   
-dontwarn com.a.a.**   
-dontwarn com.autonavi.**   
 
-keep class com.amap.api.**  {*;}      
-keep class com.autonavi.**  {*;}
-keep class com.a.a.**  {*;}


7.unity混淆(需要修改proguard.jar文件)

1
2
3
4
5
6
7
8
9
10
## ---------------------------------------------------------------
##      unity混淆(需要修改proguard.jar文件)
## ---------------------------------------------------------------
-libraryjars f:/work_hb_v021/Lib_SocShare_v237_0804/libs/untiy-classes.jar
-dontwarn com.unity3d.player.**    
-dontwarn org.fmod.**   
-keep class com.unity3d.player.**{*;}  
-keep class org.fmod.**{*;}  
-keep public class extends com.unity3d.player.**
-keep public class extends org.fmod.**


注:还需要对与unity交互的相关方法或者类(jni)进行混淆配置。



8.内部类或者内部接口类的混淆配置

1
2
3
4
5
6
7
8
9
10
11
12
13
14
# # -------------------------------------------
# #  ######## 内部类混淆配置  ##########  
# # -------------------------------------------
-keep class com.manjay.housebox.activity.CityListActivity$*{
        <fields>;
        <methods>;
}
-keepclassmembers class com.manjay.housebox.activity.CityListActivity$*{*;}
 
-keep class com.manjay.housebox.map.MapActivity$*{
        <fields>;
        <methods>;
}
-keepclassmembers class com.manjay.housebox.map.MapActivity$*{*;}









本文转自 glblong 51CTO博客,原文链接:http://blog.51cto.com/glblong/1435959,如需转载请自行联系原作者

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值