http://blog.csdn.net/aibieqing241/article/details/38979531

我的前个项目中打算引用个框架,于是就看上了AFinal的这个开源库,

感觉用着还不错,可是却到最后的关键地方,掉链子了,就是我在混淆打包后,

死活都是在报错,或者直接就是点击事件没反应。

无奈的啊,只好求助百度和Google了,可是最后发现都不好使啊!不过最后

我还是在无意间解决了这个问题。

我们一般情况下是这样加的:

-libraryjars libs/afinal_0.5.1_bin.jar
-dontwarn net.tsz.afinal.**
-keep class net.tsz.afinal.** { *; }
-keep public class * extends net.tsz.afinal.** 
-keep public interface net.tsz.afinal.** {*;}
 
可是最后往往不行,于是在网上无意间发现这个点击打开链接
我在想这个框架应该是用到了反射的机制,所以我们有时有必要加上
 
-keepattributes Signature
-keepattributes *Annotation*
 
这两个属性
后来发现时解决了一些问题,但是同时又产生了一些问题,看来官网才加上的
-keepclasseswithmembers class xxx.** {
     <fields>;
     <methods>;
}
把xxx换成你继承的afinal的这个包名加类名就行了。
 

把上面的这三个加上,基本上算是没啥问题了!

关于AFinal的混淆的更多相关文章

  1. Afinal的jar包进行代码混淆出错

    今天用到了代码混淆,混淆过后APP不能够运行,老报错,由于项目中只用了Afinal的第三方库,于是按照网上给出的答案为了不混淆Afinal的jar包,在配置文件中写入了下面的语句: -libraryj ...

  2. Android 快速开发框架:推荐10个框架:afinal、ThinkAndroid、andBase、KJFrameForAndroid、SmartAndroid、dhroid..

    对于Android初学者以及对于我们菜鸟,这些大神们开发的轻量级框架非常有用(更别说开源的了). 下面转载这10个框架的介绍:(按顺序来吧没有什么排名). 一.  Afinal 官方介绍: Afina ...

  3. apk混淆打包注意事项

    混淆打包搞了好几天才初步了解,其中碰到很多Debug正常,Release的apk不能用,基本都是第三方的jar的问题,所以要排除混淆. 1. Json解析对象出错 用到fastJson或者GJson的 ...

  4. android 混淆 与 反编译

    1, 文件 project.properties 修改: target=android-14proguard.config=${sdk.dir}/tools/proguard/proguard-and ...

  5. java.lang.NoClassDefFoundError: net.tsz.afinal.FinalHttp

    java.lang.NoClassDefFoundError: net.tsz.afinal.FinalHttpat com.hbjyjt.oa.utils.i.<init>(HttpRe ...

  6. afinal框架下 ViewInject的使用

    1.可以在BaseActivity界面onCreate 方法setContentView后加上该语句. initInjectedView(this); 2.@ViewInject(id=R.id.v_ ...

  7. Android编程之常识 - 混淆

    1,什么是混淆编译 ProGuard是一个免费的java类文件压缩,优化,混淆器.它探测并删除没有使用的类,字段,方法和属性.它删除没有用的说明并使用字节码得到最大优化.它使用无意义的名字来重命名类, ...

  8. Android Studio实现代码混淆

     1,在build.grandle添加,其中规则写在proguard-rules.pro中,也可以自定义一个文件,将其代替,比如eclipse常用的 proguard-project.txt: bui ...

  9. Android studio 混淆打包问题

    参考 : Android Studio代码混淆设置以及上传mapping文件 AndroidStudio 混淆打包 在app 目录下  proguard-rules.pro中加入 通用 混淆 #指定代 ...

随机推荐

  1. 玩玩EXPRESSJS

    呵呵,反正有的是学习时间哈哈, 这个EXPRESSJS,看看实现的大约. 看的是http://www.expressjs.com.cn/ 代码A: var express = require('exp ...

  2. [wikioi]二叉树最大宽度和高度

    简单的DFS,用数组w记录每一层的宽度就行了,就是遇到一层就++.中间发现在C++里面,如果int未初始化就是用也是有异常的.还有二叉树的数组表示时,从1开始计数会比较好.还有后来学会了数组这样的初始 ...

  3. Java按位置解析文本文件(使用Swing选择文件)

    工作中遇到这样的一个需求,按位置解析一些文本文件,它们由头部.详情.尾部组成,并且每一行的长度可能不一样,每一行代表的意思也可能不一样,但是每一行各个位置代表的含义已经确定了. 例如有下面这样一段文本 ...

  4. 自编的CHtmlView浏览器,怎么截获超连接,不让新窗口在IE中打开

    blog <自编的CHtmlView浏览器,怎么截获超连接,不让新窗口在IE中打开>    http://bbs.csdn.net/topics/10299197    http://so ...

  5. BZOJ_1009_[HNOI2008]_GT考试_(动态规划+kmp+矩阵乘法优化+快速幂)

    描述 http://www.lydsy.com/JudgeOnline/problem.php?id=1009 字符串全部由0~9组成,给出一个串s,求一个长度为n的串,不包含s的种类有多少. 分析 ...

  6. GitHub常用 库

    来自: http://www.jianshu.com/p/6475c90e8b4d 网络请求库 https://github.com/AFNetworking/AFNetworking https:/ ...

  7. 【转】Ubuntu下配置支持Windows访问的samba共享

    原文网址:http://blog.csdn.net/i_chips/article/details/19191957 一.安装Ubuntu samba服务器 $ sudo apt-get instal ...

  8. python导入模块时的路径疑惑

    有一个事儿,以前没注意,今天发现了,记录一下. 假设一个python文件a.py中,有一段代码,是打印当前路径的.当单独执行a.py文件的时候,打印的是a.py的位置. 但是当a.py文件被其他pyt ...

  9. POJ 1655 Balancing Act (求树的重心)

    求树的重心,直接当模板吧.先看POJ题目就知道重心什么意思了... 重心:删除该节点后最大连通块的节点数目最小 #include<cstdio> #include<cstring&g ...

  10. bzoj 3033 太鼓达人

    思路:首先一定是2^m次方的总数.用二进制从 000 一直到 111总过m个数,然后暴搜. #include<cstdio> #include<cstring> #includ ...