`
zhelong111
  • 浏览: 189132 次
  • 性别: Icon_minigender_1
  • 来自: 深圳
社区版块
存档分类
最新评论

Android不混淆第三方jar包

阅读更多
#在proguard.cfg中加入不混淆的jar包 和 keep不混淆的class:
-libraryjars libs/HcPaysdk.jar
-keep class com.hc.pay.**{*;}


【参考示例】:
在project.properties里加上   proguard.config=proguard.cfg
proguard.cfg 配置如下:
-optimizationpasses 5
-dontusemixedcaseclassnames
-dontskipnonpubliclibraryclasses
-dontpreverify
-verbose
-optimizations !code/simplification/arithmetic,!field/*,!class/merging/*
#忽略警告 也可以用-ignorewarnings
-dontwarn
#声明第三方jar包,不用管第三方jar包中的.so文件(如果有)
-libraryjars libs/baidumapapi.jar
-libraryjars libs/tencent_openapi.jar
-libraryjars libs/httpmime-4.1.3.jar
-libraryjars libs/weibo.sdk.android.sso.jar
-libraryjars libs/android-support-v4.jar
-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 *;
}
#不混淆第三方jar包中的类
-keep class com.baidu.mapapi.** {*;}
-keep class com.tencent.tauth.** {*;}
-keep class org.apache.http.entity.mime.** {*;}
-keep class android.support.v4.** {*;}
-keep class android.net.http.** {*;}
-keep class com.weibo.sdk.android.** {*;}
-keep class com.sina.sso.** {*;}
说明一下,第三方jar包中如果有.so文件,不用去理会,引入的第三方jar文件不要混淆,否则可能会报异常
分享到:
评论

相关推荐

    Android 混淆打包不混淆第三方jar包

    Android混淆打包不混淆第三方jar包Android 混淆打包不混淆第三方jar包

    android 生成aar/jar包包含第三方jar包没有第三方jar包怎么办

    里面涉及到一个第三方的包,这时候我生成aar/jar包给对方使用的时候,调用不到第三方包的代码,只可以调用我写的类的代码. 问题 我就去网上去寻找,aar/jar包生成包含第三方等问题.网上也有很多答案,我随便发一个别人的...

    android 混淆 去除第三方jar

    混淆第三方jar包是一个细致的过程,需要平衡安全性和应用性能。正确配置混淆规则并充分测试,是确保应用在混淆后仍能正常运行的关键。在实际开发中,不断学习和调整混淆策略,可以提升应用的安全性和效率。

    Android studio和Eclipse分别生成jar包并混淆jar包的demo

    4. **混淆jar包**:对于Eclipse,你需要使用第三方工具如ProGuard或Zelix KlassMaster。安装后,在导出jar包前运行混淆工具,并根据需要配置混淆规则。 混淆jar包在Eclipse中的过程与Android Studio类似,也需要...

    Java Jar包混淆器proguard.v3.8

    Java的Jar包混淆器ProGuard v3.8是一款强大的代码优化和保护工具,主要用于Java和Android应用程序。在软件开发过程中,源代码的安全性和保密性至关重要,而ProGuard提供了一种有效的解决方案,它能够对编译后的字节...

    android导入第三方jar包报错 如何正确导入jar包

    然而,导入第三方jar包并不总是那么顺利,可能会遇到编译时无误但运行时出错的问题。这种问题通常是由于类加载失败或依赖管理不当导致的。下面将详细介绍如何正确地导入和使用第三方jar包,并针对描述中的错误进行...

    Android Studio混淆导出jar

    有些第三方库可能已经进行了混淆,我们需要确保它们的混淆规则与我们的应用兼容。此外,对于需要保持的注解或者接口,也需要添加对应的混淆规则。 完成混淆规则的设置后,我们可以开始在Android Studio中导出混淆后...

    实现对jar包的混淆加密

    此外,还可以考虑使用第三方加密库,如Bouncy Castle,它提供了更丰富的加密功能和更强的安全性。 在实际应用中,混淆和加密往往是结合使用的,以提供多层次的保护。混淆使得攻击者难以理解和复现代码逻辑,而加密...

    android工程正确导入jar包

    这些第三方库通常是以jar包的形式提供的。本文将详细介绍如何正确地将jar包导入Android项目中,并确保它们能被正确打包进最终的apk文件。 #### 导入jar包的基本步骤 1. **下载jar包**:首先需要从可靠的源下载所需...

    android jar包

    在本案例中,"android jar包"指的是专为Android平台设计的`.jar`文件,它们通常包含了Android SDK中的API接口或者第三方库的功能。 Android开发中的`jar`包主要分为以下几类: 1. **Android SDK库**:这些`jar`包...

    android 隐藏api jar包,api 30

    如果遇到需要使用隐藏API的情况,开发者应该先检查是否有替代的公开API或第三方库可以满足需求。 8. **测试和适配**: 使用隐藏API的应用程序在不同设备和Android版本上的表现可能不一致,因此需要进行广泛的测试...

    android 反编译jar包

    8. **实战应用**:在实际工作中,反编译jar包可能用于调试第三方库、研究竞品技术、修复兼容性问题等。然而,对于大型项目,反编译可能无法替代直接获取源代码,因为反编译后的代码往往缺乏注释和完整的结构。 总之...

    Android 引用第三方库的方法.zip

    在Android开发中,引入第三方库是提升开发效率和优化代码质量的重要手段。这些库通常包含了丰富的功能,如网络请求、图片加载、数据持久化等,能够帮助开发者快速实现项目需求。下面将详细介绍如何在Android项目中...

    android引入外部jar包.doc

    在Android开发过程中,有时我们需要引入外部的jar包来扩展功能或使用第三方库。然而,在引入外部jar包时可能会遇到一些问题,比如标题和描述中提到的错误:"Multiple dex files define Lcom/loopj/android/...

    Android加密解析之第三方安全平台

    如果项目包含第三方库如`BaiduLBS_Android.jar`和`android-support-v4.jar`,则需要针对这些库编写自定义混淆规则,防止关键方法因混淆而丢失。 在导出APK的过程中,某些第三方加密平台可能要求提供已签名的APK。...

    android activity,java打包架包混淆经验.docx

    本文将详细介绍如何使用ProGuard 5.1进行打包混淆,特别是涉及到Activity、JNI、方法以及第三方库的处理。 首先,我们要了解ProGuard是一个强大的Java字节码混淆、优化和压缩工具,它能将Java类文件转换为更难阅读...

    andriod studio开发中常用jar包3

    在Android Studio开发过程中,我们经常会遇到需要引入第三方库的情况,以增强应用的功能或者优化开发效率。标题提到的“andriod studio开发中常用jar包3”是一个针对Android Studio开发者的资源包,它包含了部分常用...

    ProGuard混淆与dex2jar反编译工具

    开发者可能需要用到`dex2jar`来进行第三方库的分析,或者在调试和修复问题时,了解第三方库的内部工作方式。 使用`ProGuard`和`dex2jar`的过程大致如下: 1. **ProGuard混淆**:在Android Studio中,可以在`build....

    android-support-multidex.jar.zip

    在Android应用开发中,由于Dalvik和ART虚拟机对单个Dex文件的方法数限制(65536个),当项目日益庞大,引入大量第三方库时,很容易超出这个限制。为了解决这个问题,Android提供了`android-support-multidex.jar`...

Global site tag (gtag.js) - Google Analytics