ormlite包混淆打包
来源:互联网 发布:天正不能访问到网络锁 编辑:程序博客网 时间:2024/05/16 03:59
ormlite官网上没有找到proguard相关的配置说明,在stackoverflow上找到了如下配置:
1
2
3
4
5
6
7
8
9
# OrmLite uses reflection
-keep class com.j256.**
-keepclassmembers class com.j256.** { *; }
-keep enum com.j256.**
-keepclassmembers enum com.j256.** { *; }
-keep interface com.j256.**
-keepclassmembers interface com.j256.** { *; }
-keepattributes *Annotation*
能正式打包通过,但是在运行时会报一个异常:
1
no fields have a databasefield annotation in class <com.package.myclass>
原因是我的数据库表bo类中使用了ormlite的 @DatabaseField注解;这个异常能通过下面这一句
1
-keepclassmembers class com.package.bo.** { *; }
来忽略混淆bo包下的所有类的类成员,但是有时候这不是一个最好的方法因为bo包下有可能还有一些非数据库使用的bo类或者其他类。
最后,我从Proguard手册中找到了下面这个方法,可以仅忽略混淆使用了DatabaseField注解的类成员。
1
2
3
-keepclassmembers class * {
@com.j256.ormlite.field.DatabaseField *;
}
自此ormlite相关的proguard就正常了,在此做个记录。
另外如果程序里使用到了泛型,或许可能需要下面这一句
-keepattributes Signature
不混淆泛型
如果还是不行,加上下面一句
-keepattributes *Annotation*
最后附上Proguard手册地址,传送门
- 本文固定链接: http://proliang.com/proguard-ormlite.html
- 转载请注明: Liang 2014年08月14日 于 PRO.LIANG Blog 发表
- 顶
- 0
- 踩
0 0
- ormlite包混淆打包
- 打包jar包并混淆
- android 第三方jar包 混淆打包
- Android打包出的jar包混淆
- ant打包和jar包混淆
- ant打包和jar包混淆
- Android 混淆打包不混淆第三方jar包
- Android 混淆打包不混淆第三方jar包
- 使用了Ormlite这个jar包,混淆代码就崩溃问题总结
- Android开发中ormlite混淆
- 混淆打包
- 混淆打包
- 混淆打包
- android 打包时不混淆第三方的jar包
- Android工程封装打包的jar包混淆,有图有真像!
- Ant混淆打包生成SDK的JAR包
- 微信android混淆打包减少安装包大小
- android 工程eclipse打包so和jar包混淆
- HDU 3683--模拟+搜索
- hbm配置文件常用设置
- JAVA-Struts2学习之自定义拦截器
- 人活着系列之芳姐和她的猪
- STL容器之关联容器
- ormlite包混淆打包
- 【杭电1285】确定比赛名次
- 省市县联动 php处理 生成js文件 并且jquery 调用
- 人生经验 C#图解教程 学后感悟总结
- HDU:2647 Reward(链表型拓扑排序)
- (二)创建,修改,删除表空间
- Educational Codeforces Round 4 D 扫描线思想
- Spring框架——AOP前置、后置、环绕、异常通知
- 【杭电2647】Reward