浅谈Android应用HTTP框架选型

浅谈Android应用HTTP框架选型

我们知道,Android应用主要是通过客户端-服务器的方式进行数据交互,一般在APP开发时可能是一个接口对应一个显示模块,这样的设计会让客户端更新时很麻烦。为了解决这个问题,通常的做法是和服务端之间定义协议,设计显示模式,进而达到实时更新UI界面的目的,增加或删除显示模块时不需要让用户手动更新apk,这种方法最常见的就是在做活动或者广告的时候用到。以我们的优云Mobile移动端为例,Android和iOS应当使用一个统一的接口定义我们的导航栏,针对每个导航栏下的子页面数据对图形进行规划分类,UI需要给出前端有哪些展现形式。如图所示:

1

2.jpg

2

 浅谈Android应用HTTP框架选型

3

浅谈Android应用HTTP框架选型

有了显示模式的设计,接下来就是实现了,对于客户端来说,http通信的框架选型是很重要的,目前Andriod Http通信的框架常用的有以下四种:

 ·        HttpClient:

源于Apache,更适合在Android2.2以下的版本使用,在Android6.0中已经被删除。

·        HttpUrlConnection:

Android标准实现,支持GZIP压缩,连接速度比HttpClient要快很多,推荐使用。

·        Volley:

2013年google发布的第三方http开源框架,内部集成了HttpClient和HttpUrlConnection,内部有一个线程池,让所有的http请求进行排序,在网络图片加载中采用三级缓存机制使网络图片进行异步加载,适合数量不大但通信频繁的地方使用。目前我们的优云Mobile移动端使用的就是这个框架,但是这个框架的不足在于对服务端重定向或者异常的情况处理不够。可以在源代码基础上添加服务端可能返回的错误处理。

·        okHttp:

2015年Google发布的okHttp,功能十分强大,封装了文件的上传下载功能,图片的加载,处理了服务端各种可能的网络错误,但是文件大小有311k,某些场景下使用可能会稍嫌臃肿。

 

接下来我们谈谈内存分析。再好的代码,我们也需要进行内存校验,看看是否有内存溢出或者内存泄漏的情况,这里利用google提供的Mat工具进行可视化分析,确保我们的内存正常。首先在DDMS中选择我们的应用,点击Dump按钮,运行apk一段时间或者利用monkey进行自动化测试一段时间后,再次点击Dump,得到.hprof文件,利用Androidsdk里面的hprof-conv命令将.hprof文件转化为MemoryAnalyzer可以识别的文件,再打开mat工具,打开.hprof文件,得到如下图所示的内容,进行内存分析查看。

 浅谈Android应用HTTP框架选型

 

最后介绍下apk文件打包,我们现在大部分是用Android studio进行开发,打包也是用gradle进行渠道分类打包,配置完混淆文件后,gradle中再配置不同的渠道,可以传递渠道号给服务端让服务端进行不同版本和不同渠道号的分析和控制。

优云Mobile一旦安装到手机上,即可随时随地可查看应用体验数据。

原创文章,作者:uyunops,如若转载,请注明出处:http://www.178linux.com/18265

(0)
uyunopsuyunops
上一篇 2016-06-22 15:35
下一篇 2016-06-22 15:39

相关推荐

  • Sed及Vim作业

      Sed及Vim作业题:     1、删除/etc/grub2.conf文件中所有以空白开头的行行首的空白字符    [root@localhost 7 ~]# sed -r  's/^[[:space:]]…

    Linux干货 2016-08-09
  • 111-puppet

    一.运维层次分类 OS Provision:

    2016-12-04
  • 第二周作业

    1、Linux上的文件管理类命令都有哪些,其常用的使用方法及其相关示例演示。 文件管理命令:cp、mv、rm (1)cp命令:copy     单源复制:cp [OPTION]… [-T] SOURCE DEST     多源复制:cp…

    Linux干货 2016-12-10
  • 软件包管理

    软件运行环境 ABI(应用程序的二进制接口):Application Binary Interface Windows 与Linux 不兼容 ELF(Executable and Linkable Format)           —&…

    Linux干货 2017-04-23
  • 课堂练习及课后作业(0805文本处理工具)

    课堂练习: 1、找出ifconfig命令结果中本机的所有IPv4地址 2、查出分区空间使用率的最大百分比值 3、查出用户UID最大值的用户名、UID及shell类型 4、查出/tmp的权限,以数字方式显示 5、统计当前连接本机的每个远程主机IP的连接数,并按从大到小排序 grep 1、显示/proc/meminfo文件中以大小s开头的行;(要求:使用两种方式…

    Linux干货 2016-08-07
  • 搜索引擎的检索模型-查询与文档的相关度计算

    1. 检索模型概述       搜索结果排序时搜索引擎最核心的部分,很大程度度上决定了搜索引擎的质量好坏及用户满意度。实际搜索结果排序的因子有很多,但最主要的两个因素是用户查询和网页内容的相关度,以及网页链接情况。这里我们主要总结网页内容和用户查询相关的内容。     &nbsp…

    2015-12-10

评论列表(1条)

  • stanley
    stanley 2016-06-22 15:38

    这图很赞,是找的还是自己画的?