查字典论文网 >> Android快速开发框架的研究

Android快速开发框架的研究

小编:

摘 要:本文从实际开发的角度,研究了适合大多数App快速开发框架的解决方案,这种方案能够很好的提高App开发的效率。本文开发项目的结构和架构等方面阐述了App框架所应具有的模块和功能,从而实现快速开发一个完善app的基本框架。

关键词:android;缓存;LruCache;自定义UI;快速开发

1、前言

移动互联网热潮在全世界引起巨大的反响,全世界的IT公司争相将业务重心向移动互联网转移。在这样一个讲究效率和稳定性的互联网时代,每个公司都希望自己以最快的速度拿出一个产品。在这样的情形下,有可能会导致做出来的大部分app的稳定性低,其根本原因在于没有一个完善的架构,导致app的扩展性差、耗电、费流量等。因此,在这种情形下,迫切需要一个能够快速开发的框架,以及拥有良好的扩展性和稳定性的架构。

目前,android的国内整个生态圈不是特别完善,碎片化比较严重,机型之间性能差别大,能够使用的内存也是差别很大。经常会出现因为没有顾及低内存的机器,从而让app经常出现crash。在一些开发经验少的创业公司,遇到的这类问题比较多。而且初期的项目框架的扩展性不是很好,常常会因为使用的第三方的框架太多,导致资源混杂,从而让app变得原来越大。在目前的一些创业公司的日常工作里,最为普遍的问题就是资源的冲突问题,从而导致效率变低。综上所述,本文采用基于Google最新项目构建工具gradle和一些策略来对其应用框架进行改进。

2、构建良好的项目结构

目前大多数的项目构建都是基于eclipse进行构建,它具有以下特点:

首先,采用Google最新的项目构建工具gradle和android studio进行项目构建,整体项目结构采用父子模块的形式,这种构建方式有很好的灵活性,能够轻易的指定多个目录为资源目录,能够很好的进行资源分离操作,其项目结构如图1所示。

图1 项目层次化结构图

通过上述使用的项目构建功能,能够很好的把多个模块独立的抽离出来,并且把当下互联网公司常用的一些第三方平台独立的加入到整个项目里面来。从而使这些模块能够被多个项目使用,能够很好的保证代码统一性和质量,同时也增快了项目的开发效率。

其次,通过对各个功能模块的分离,所需使用的一些资源文件(图片,xml,布局文件等)能够很好的进行分离,项目构建十分灵活,同时也可以很好的保障不会加入冲突资源。

在远程依赖方面,gradle可以访问maven仓库,并且以很简洁的形式来对指定版本的jar包进行远程依赖,如下所示:

compile'com.squareup.picasso:picasso:2.5.2'

3、项目框架

如上所述,目前项目大概分数据模块、UI模块、第三方模块、第三方框架模块、主应用,针对数据模块来说, 这里包括数据的访问、数据缓存以及数据的持久化,这里为主模块提供统一的数据访问,http通信,其功能流程下:图2所示。

数据模块提供了整个App中最重要的模块,图片缓存管理模块,图片缓存是整个App种性能消耗最大,消耗流量大概占用应用的90%左右,该模块结合了数据缓存的思想,流程如图3所示。

在缓存图片的内存算法方面,采用目前流行的Memory LruCache(最近最少使用),同时在应用启动的时候能够自动根据手机剩余的缓存,自动设置图片缓存的容量。很好的减少低端机上面内存溢出的情况。

HTTP网络请求方面,采用Google Vollery作为底层通信,该模块拥有很好的兼容性和高效性,提供android2.3以下版本的网络通信支持,并且封装了异步请求,通过回调函数进行操作,提供访问网络的便捷性。

其次是UI模块,这里提供了大部分自定义UI,比如常用的下拉刷新,底部tab页等多种常用的UI,能够很快的进行复用。

第三方模块,这里主要是提供一些目前互联网公司常用的一些产品,例如友盟,各种广告平台等,提供一个共用的接口,以及简单的配置,并且把这个模块继续进行拆分为多个子模块,保证他们的资源进行彻底分离。

第三方框架模块,这里主要是提供一些网上流行的第三方库,可以自行删除和添加,保证他们不会相互影响。

4、结论

针对于当下互联网企业来说,这套框架比较完善,能够基于这个框架爱快速并且稳定的开发出产品出来,本框架大多是针对内容类的移动应用,提供一个很好的方案,针对于一些有特性功能的应用来说,框架提供的功能却显得单薄,但是从项目的结构方面来说却是值得借鉴。

热点推荐

上一篇:中国绿色金融发展的问题及对策研究

下一篇:如何对幼儿进行德育教育论文 幼儿园关于德育教育之类的论文