KJFrameForAndroid 2.25 发布,支持6.0网络请求

kymjs张涛
 kymjs张涛
发布于 2015年10月11日
收藏 36

KJFrameForAndroid 的设计思想是通过封装Android原生SDK中复杂的复杂操作而达到简化Android应用级开发,最终实现快速而又安全高效的开发APP。目标是用最少的代码,完成最多的操作,用最高的效率,完成最复杂的功能。 项目地址:http://git.oschina.net/kymjs/KJFrameForAndroid 

本次更新内容包括:

  1. 支持Android6.0的网络请求(在Android6.0上移除了全部的HttpClient相关类,KJHttp根据Google推荐通过HttpUrlConnection来支持Android6.0)。

  2. 移除HttpCallback中一处标记为过时的方法拼写错误的方法。

  3. 添加异步回调onSuccessInAsync(),当http请求成功时会现在异步回调本函数,然后才会在UI线程执行onSuccess()。(我们在做解析的时候,通常是在UI现场中操作,如果此时数据过于复杂,则会阻塞UI线程。本次更新你将可以在异步做解析操作,并在UI线程来使用异步解析后的数据)

  4. KJActivity类中枚举替换为int,基类中Handle使用软引用调用。

本站文章除注明转载外,均为本站原创或编译。欢迎任何形式的转载,但请务必注明出处,尊重他人劳动共创开源社区。
转载请注明:文章转载自 OSCHINA 社区 [http://www.oschina.net]
本文标题:KJFrameForAndroid 2.25 发布,支持6.0网络请求
加载中

最新评论(8

lcj_kyzg
lcj_kyzg
继承KJActivity了,有两个activity,分别为A和B两个Activity,我在B中去调用mKJActivityStack.finishActivity(A.class);根本不行。前提是我在两个Activity中的initData()中都写了 AppContext.mKJActivityStack.addActivity(this);,
梅利奥达斯92
详情请见: http://note.youdao.com/share/web/file.html?id=055249856d58f2a523e5a7549eef278b&type=note
梅利奥达斯92

引用来自“梅利奥达斯92”的评论

我用2.2模拟器请求json数据,就会是400错误,但是4.0的模拟器就一切正常。而2.2模拟器请求图片,html数据又都正确,而且下载也正确,就是请求json数据出问题,400.大神,望解决!!

引用来自“张涛OSC”的评论

2.3以前的httpurlconnection有bug,手动加入Accept-Encoding: gzip就行了。
在框架中params.putheader("Accept-Encoding", "gzip");
for (String headerName : map.keySet()) {
if (null != map.get(headerName)) {
connection.addRequestProperty(headerName, map.get(headerName));
}
}
好了,现在你的网络请求框架暂时我觉得无敌了。
梅利奥达斯92
这个我试了还是不行,我把你的源码仔细研究了,写的好复杂,但是我还是找到了解决办法。org.kymjs.kjframe.http.HttpConnectStack类,吧@Override
  public KJHttpResponse performRequest(Request<?> request,
      Map<String, String> additionalHeaders) throws IOException 这个方法中有一句for (String headerName : map.keySet()) {
      if (null != map.get(headerName)) {
        connection.addRequestProperty(headerName, map.get(headerName));
      }
    }
你connection.addRequestProperty的时候需要判断是否为null。对于8就是null,只要这个判断是否为空就可以解决了。

kymjs张涛
kymjs张涛

引用来自“梅利奥达斯92”的评论

我用2.2模拟器请求json数据,就会是400错误,但是4.0的模拟器就一切正常。而2.2模拟器请求图片,html数据又都正确,而且下载也正确,就是请求json数据出问题,400.大神,望解决!!
2.3以前的httpurlconnection有bug,手动加入Accept-Encoding: gzip就行了。
在框架中params.putheader("Accept-Encoding", "gzip");
梅利奥达斯92
我用2.2模拟器请求json数据,就会是400错误,但是4.0的模拟器就一切正常。而2.2模拟器请求图片,html数据又都正确,而且下载也正确,就是请求json数据出问题,400.大神,望解决!!
白色超人
白色超人
试试看,稳不稳定
loyal
loyal
根据Google推荐通过HttpUrlConnection来支持Android6.0

really?
返回顶部
顶部