Android 混淆打包以及常见问题
来源:互联网 发布:针对淘宝店主调查问卷 编辑:程序博客网 时间:2024/06/05 13:28
在网上看了很多关于android混淆打包的帖子,但是真正能解决问题的很少,特别对于版本较高的android项目。本篇主要解决混淆打包出现的问题以及打包签名之后出现问题。
在高版本的android项目中,里边没有了proguard.cfg,取而代之的是proguard-project.txt。
我们需要在project.properties中添加上这行代码
proguard.config=${sdk.dir}/tools/proguard/proguard-android-optimize.txt:proguard-project.txt
然后所有的混淆都在这个proguard-project.txt文件里进行说明:
一、首先我们不需要混淆第三方的东西,只需要混淆自己写的代码就行了。这点很重要,不然很容易出错哦
二、如何不混淆第三方,这才是关键
如果引入了第三方的library中包含jar,我们也不让他们混淆,防止混淆出错
引入方法:
-libraryjars ../第三方库的工程名/libs/**.jar
例:
-libraryjars ../duoshuo-android-sdk/libs/jackson-annotations-2.2.3.jar
如果直接引入的是sdk的jar包,引入方法:
#(声明lib文件)-libraryjars **.jar
#(不提示警告)-dontwarn com.xx.xxx.**
#(不进行混淆)-keep class com.xx.xxx.** { *;}
三、常见问题
1.保持泛型不被混淆
-keepattributes Signature
2.ExceptionInitializerError错误,原因:是由于类初始化的时候发生了异常,有可能人家用到了类的注解,而Produard在混淆优化的时候把注解去掉了,解决办法:在Proguard里面加上注解保护
-keepattributes *Annotation*
3.不混淆R文件
proguard-project.txt 文件下载地址:-keep class **.R$* { *; }
包含了友盟的、信鸽、apache,大家可以借鉴一下
http://download.csdn.net/detail/shr957250701/7749043
- Android 混淆打包以及常见问题
- Android混淆打包 引用库常见问题
- APK签名、混淆基本配置、打包以及常见问题
- Android Stuido代码混淆以及打包
- Android 代码混淆,混淆打包
- 关于Android Studio打包混淆以及上传mapping文件
- 关于Android Studio打包混淆以及上传mapping文件
- Android 混淆打包编译
- Android 混淆打包
- android 签名、混淆打包
- Android 混淆打包
- Android混淆打包
- Android混淆打包
- Android 混淆打包
- android中混淆打包
- android proguard混淆打包
- Android 之混淆打包
- Android混淆打包
- poj 2186 仅有一个初度为零的集合
- 安装cacti 环境
- Memcached 集群的高可用(HA)架构
- 浏览器与URL
- ClearEditText
- Android 混淆打包以及常见问题
- Qt error: GL/gl.h
- 无法打开系统头文件
- ant 构建时遇到 “非法字符: \65279”的解决办法
- 高速缓冲区中的b_uptodate和b_dirt
- 多线程
- Special Table Types In SQL Server
- UIBezierPath贝塞尔弧线用法1
- java中的代码块