# Add project specific ProGuard rules here.
# By default, the flags in this file are appended to flags specified
# in C:\Users\Administrator\AppData\Local\Android\Sdk/tools/proguard/proguard-android.txt
# You can edit the include path and order by changing the proguardFiles
# directive in build.gradle.
#
# For more details, see
# http://developer.android.com/guide/developing/tools/proguard.html
# Add any project specific keep options here:
# If your project uses WebView with JS, uncomment the following
# and specify the fully qualified class name to the JavaScript interface
# class:
#-keepclassmembers class fqcn.of.javascript.interface.for.webview {
# public *;
# alipay
-dontwarn com.alipay.**
-keep class cn.alipay.** { *; }
-dontwarn com.alipay.mobilesecuritysdk.**
-keep class cn.alipay.mobilesecuritysdk.** { *; }
#==================gson==========================
-dontwarn com.google.**
-keep class com.google.gson.** {*;}
-keep class com.loopj.android.http.** {*;}
-keep class com.ta.utdid2.** {*;}
-keep class com.ut.device.** {*;}
-keep class HttpUtils.HttpFetcher{*;}
-keep class com.juefeng.sdk.juefengsdk.base.constant.** {*;}
-keep class com.juefeng.sdk.juefengsdk.services.bean.** {*;}
-keep class com.juefeng.sdk.juefengsdk.services.http.** {*;}
-keep class com.juefeng.sdk.juefengsdk.ui.activity.** {*;}
# 保持哪些类不被混淆
-keep public class * extends android.app.Fragment
-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
#如果有引用v4包可以添加下面这行
-keep public class * extends android.support.v4.app.Fragment
-keepclasseswithmembers class * { # 保持自定义控件类不被混淆
public <init>(android.content.Context, android.util.AttributeSet);
}
-keepclasseswithmembers class * {# 保持自定义控件类不被混淆
public <init>(android.content.Context, android.util.AttributeSet, int);
}
# webview + js
-keepattributes *JavascriptInterface*
# keep 使用 webview 的类
-keepclassmembers class com.juefeng.sdk.juefengsdk.ui.activity.WebViewActivity {
public *;
}
# keep 使用 webview 的类的所有的内部类
-keepclassmembers class com.juefeng.sdk.juefengsdk.ui.activity.WebViewActivity*{
*;
}
-keep class com.juefeng.sdk.juefengsdk.JFSDK{*;}
-keep class com.juefeng.sdk.juefengsdk.base.utils.ReflectUtils{*;}
-keep class com.juefeng.sdk.juefengsdk.base.utils.JsonUtils{*;}
-keep class com.juefeng.sdk.juefengsdk.interf.SDKEventListener{*;}
#保证 类中的某个方法不被混淆
-keep class com.juefeng.sdk.juefengsdk.ui.widget.LoginRegisterDialog{
private void refreshIsUserPhoneExist(com.juefeng.sdk.juefengsdk.services.bean.SmsCaptchaBean);
private void refreshAccountOrPhoneExist(com.juefeng.sdk.juefengsdk.services.bean.SmsCaptchaBean);
private void refreshRegistByUserName(com.juefeng.sdk.juefengsdk.services.bean.LoginBean);
private void refreshRegist(com.juefeng.sdk.juefengsdk.services.bean.LoginBean);
private void refreshLogin(com.juefeng.sdk.juefengsdk.services.bean.LoginBean);
}
-keep class com.juefeng.sdk.juefengsdk.ui.widget.RealNameDialog{
private void refreshRealName(com.juefeng.sdk.juefengsdk.services.bean.SmsCaptchaBean);
}
-keep class com.juefeng.sdk.juefengsdk.ui.widget.PopView{
private void refreshLogin(com.juefeng.sdk.juefengsdk.services.bean.LoginBean);
}
-keep class com.juefeng.sdk.juefengsdk.base.utils.SyncGameData{
private void refreshSyncGameData(com.juefeng.sdk.juefengsdk.services.bean.SyncGameInfoBean);
}
#}
转载于:https://my.oschina.net/u/3407628/blog/1562975
分享到:
相关推荐
android studio混淆文件配置proguard-rules.pro,以及各类架包混淆选择,混淆设定
Android Studio作为Android开发的主要集成开发环境(IDE),提供了便捷的混淆配置和操作。本文将深入探讨如何在Android Studio中进行代码混淆,并导出混淆后的jar文件。 首先,我们需要了解混淆的基本原理。混淆是...
在Android开发中,为了保护应用的安全性和...以上是Android Studio中混淆配置的基本介绍和注意事项,正确配置混淆规则对于提升应用安全性和优化APK大小至关重要。在实际开发中,应根据项目特点灵活调整和优化混淆配置。
Android Studio是一款广泛使用的Android应用程序开发集成环境,而代码混淆是其中的一个重要环节,尤其是在发布应用时,为了提高代码的安全性和减少体积,通常会使用到Proguard工具。AndroidProguard插件则是为...
在 android studio 使用自定义混淆字典进行混淆,增加app被反编译后阅读的难度, 内容为16位由0,o,O,3个字符生产的如OoO0oOoOoO0O0oO0这样的不重复字符串,使用方式:将下载的dictoO0.txt放在proguard-rules.pro同级...
本文将详细介绍如何在Android Studio中进行混淆和打包,并验证其是否成功。 首先,我们来看混淆(ProGuard)的过程。混淆的主要目的是保护应用的源代码,避免被恶意用户反编译,通过混淆,可以使得代码变得难以理解...
本文将详细介绍如何在Android Studio中将多个Module混淆并打包成一个Jar文件。 1. **创建Module** 首先,确保你已经拥有多个独立的Android Studio Module。每个Module代表一个独立的功能或库。在Android Studio中,...
Android Studio默认集成了ProGuard工具,它是Android混淆的核心。ProGuard不仅可以混淆代码,还能优化、压缩和删除未使用的类和方法。 标题提到的“android 混淆 去除第三方jar”,意味着我们需要处理包含在项目中...
本文将深入探讨如何在Android Studio和Eclipse中生成jar包,并介绍混淆jar包的实践方法。 首先,我们来讨论在Android Studio中生成jar包的步骤: 1. **打开Android Studio项目**:确保你已有一个Android项目,然后...
**Android Studio 4.2.1 for Linux** Android Studio是Google为Android开发者提供的一款集成开发环境(IDE),专为高效地构建、测试和发布Android应用而设计。版本4.2.1是该软件的一个更新,它针对Linux操作系统...
本文主要介绍了Android studio利用gradle打jar包并混淆的方法,下面话不多说,来看看详细的介绍吧。 首先打jar包的配置很简单,使用jar的task,可以参考gradle官方文档,具体代码如下: task buildJar(type: Jar, ...
Android Studio作为官方推荐的集成开发环境(IDE),提供了一系列工具来帮助开发者优化项目。本文将详细介绍如何利用Android Studio中的工具来清理无用和冗余的资源文件,提升应用性能,并优化APK大小。 一、...
ProGuard是Android默认的混淆工具,而在新版本的Android Studio中,R8逐渐取代了ProGuard。你需要在“proguard-rules.pro”文件中添加或修改混淆规则,以避免关键代码被混淆错误导致的问题。 5. **优化APK大小** ...
本文将深入探讨如何在Android Studio中实现多渠道打包。 一、理解多渠道打包 多渠道打包的核心目标是区分不同来源的用户,如Google Play、华为应用市场、小米应用商店等。每个渠道对应一个特定的标识符,这个...
4. 支持ProGuard和应用签名:ProGuard可以对Android应用进行代码混淆和压缩,增加逆向工程的难度。应用签名则是在发布应用前进行的一种加密操作,用于确保应用的完整性以及验证应用来源。 5. 基于模板的向导来创建...
在【Android studio tool.zip】这个压缩包中,我们重点关注的是“jar打包”和“jar混淆”这两个关键知识点。 **一、jar打包** Java Archive (JAR) 文件是一种归档格式,用于存储Java类文件、资源和其他文件。在...
《Android Developer Tools Essentials: Android Studio to Zipalign》是Mike Wolfson撰写的一本书,专注于为Android开发者提供实用的工具和知识。这本书由O'Reilly Media出版,涵盖了从Android Studio到Zipalign等...
### Android Studio 使用手册知识点详解 #### 一、Android Studio 简介 - **定义**:Android Studio 是一款由 Google 开发的、基于 IntelliJ IDEA 的 Android 集成开发环境(IDE)。它专为 Android 应用程序的开发与...
本教程将详细介绍如何在Android Studio中手动创建并生成Dex文件源码,这对于理解Android应用的编译过程以及进行动态加载优化具有重要意义。 首先,了解Dex文件的生成过程。当我们在Android Studio中构建一个项目时...