Android四款系统架构工具
开发者若想开发出一款高质量的应用,一款功能强大的开发工具想必是不可或缺的。开发工具简化了应用的开发流程,也能使开发者在应用开发本身投入更多的精力。本文就为大家带来4款实用的Android应用架构工具。
1. Spring for Android
Spring for Android是Spring框架在Android平台上的扩展,旨在简化Android原生应用的开发流程,提高开发者的工作效率。Spring for Android可以帮助开发者简化应用与服务器端交互和Auth授权验证。
很多Android应用都要与服务器进行交互,而现在很多应用服务器都会提供REST服务,数据格式一般是JSON、XML、RSS等,使用Spring for Android将会大大地方便Android应用与服务器端的交互。Spring for Android能够简化JSON的解析工作。截至目前,Spring for Android支持3个JSON第三方库(Jackson JSON Processor、Jackson 2.x和Google Gson)。另外,Spring for Android中的Simple XML Serializer 也可以帮助开发者解析XML文件。
现在很多应用都提供开放的API服务,Android应用往往要经过授权才能接入这些服务,而如今大多应用都采用Auth授权认证,使用Spring for Android可以帮助开发者快速地进行授权处理。
2. GreenDroid
GreenDroid是一款高效的Android开发类库,可以为开发者提供一个更为轻便的Android开发环境。
Android的开放性使得各种应用的UI设计基本上丧失了一致性。不管是官方应用还是第三方应用,都选择使用自己的UI交互,开发各种非标准的按钮和控件。GreenDroid可以使开发者的应用与Android生态系统保持一致,并试图为开发者打造界面结构与风格一致的开发环境。
GreenDroid能够很好地利用Android框架所提供的功能,帮助开发者提高应用质量,还能允许开发者随时对应用功能进行优化。
XML作为承载数据的一个重要角色,如何利用XML成为Android开发中一项重要的技能。GreenDroid可以把XML文件解析到库中,帮助开发者充分利用XML。
3. Ignition
开发者通过使用Ignition所提供的即用组件和样板文件的实用类,可以让所开发的Android应用快速起步。
Ignition涵盖的区域包括:
- Widget、Adapter、Dialog等UI组件;
- 允许编写简单却强大的网络代码的HTTP Wrapper库;
- 加载远程Web图像并进行缓存的类;
- 简单但有效的缓存框架(将对所有对象树做出响应的HTTP缓存到内存或硬盘中);
- Intents、diagnostics等几个能让API级别更容易向后兼容的帮助类;
- 更友好、更强大的AsyncTask实现。
Ignition包括三个子项目:
- Ignition-core——是一个可以直接编译到App中的Android库项目。
- Ignition-support——一个标准的Java库项目,被部署为一个普通的JAR,包含了大部分实用工具类。开发者可以独立使用该工程的核心模块。
- Ignition-location——一个可以直接编译到应用程序中的Android AspectJ库项目。能够让定位应用在不需要Activity位置更新处理的情况下获取到最新的位置信息。
4. DroidParts
DroidParts是Android开发中一组常用的开发组件,DroidParts可以给开发者带来许多都意想不到的便利。DroidParts主要囊括以下几个方面:
- DI——DroidParts在注入Views、Services方面做到了真正的“开箱即用”效果,并且自定义依赖关系可以定义在DependencyProvider类中。
- ORM——通过利用Cursors和Fluent API,DroidParts可以帮助开发者实现高效模型持久化。
- JSON——DroidParts中含有简单的JSON生成和解析器,实现了对嵌套对象的高效处理。
- ImageFetcher——可以将图片异步加载ImageViews中,同时支持淡入和淡出效果。
- RESTClient——可以向服务器发送各种HTTP请求(用户也可以自定义请求方式和提交JSON对象),并显示服务器响应。
此外,DriodParts改进了AsyncTask和IntentService,支持应用的异常处理和结果报告。
Android四款系统架构工具的更多相关文章
- Android群英传》读书笔记 (1) 第一章 Android体系与系统架构 + 第二章 Android开发工具新接触
第一章 Android体系与系统架构 1.Dalvik 和 ARTDalvik好比是一辆可折叠的自行车,平时是折叠的,只有骑的时候,才需要组装起来用.ART好比是一辆组装好了的自行车,装好就可以骑了. ...
- Android群英传笔记——第一章:Android体系与系统架构
Android群英传笔记--第一章:Android体系与系统架构 图片都是摘抄自网络 今天确实挺忙的,不过把第一章的笔记做一下还是可以的,嘿嘿 1.1 Google的生态圈 还是得从Android的起 ...
- Android特性与系统架构
Android特性与系统架构 一.Android特性 • 应用程序框架支持组件的重用与替换 • Dalvik 虚拟机专为移动设备优化 • 集成的浏览器基于开源的WebKit 引擎 • 优化的图形库包括 ...
- Linux下四款常见远程工具比较
摘要:Linux远程可不像Windows下那么方便,主要是连接的速度.显示的画质不能令人满意(延迟.撕裂).本文只是说一下我用过的四款远程工具.Anydesk官网:https://anydesk.co ...
- Android强大的开源库与系统架构工具
后来加上的,因为太强大了,android上百个可立即使用的开源库介绍:https://github.com/Trinea/android-open-project 一款功能强大且实用的开发工具可以为开 ...
- Android之路-------浅淡Android历史、系统架构与开发特色
前言 离上一篇发表的博客差不多有两个星期了吧,相信有些博友差点就对LP失望了,因为上一篇博文中说了,这次不管怎样,LP都会坚持写博客的. 由于工作关系LP才隔了这么久才再次发表博文,这篇博文主要是总结 ...
- 吴裕雄--天生自然Android开发学习:android 背景相关与系统架构分析
1.Android背景与当前的状况 Android系统是由Andy Rubin创建的,后来被Google收购了:最早的版本是:Android 1.1版本 而现在最新的版本是今年5.28,Google ...
- 第一章 Android体系与系统架构
1. Dalvik 和 ART(Android Runtime) 在Dalvik中应用好比是一辆可折叠的自行车,平时是折叠的,只有骑的时候,才需要组装起来用.在ART中应用好比是一辆组装好了的自行车, ...
- iOS开发者必备:四款后端服务工具
本文转载至 http://mobile.51cto.com/iphone-411917.htm 对于开发者来说,连接后端数据或许是一件特别痛苦的事情.但后端服务却能够帮助开发人员以更快的速度构建移动应 ...
随机推荐
- LinkedList剖析
第1部分 LinkedList介绍 LinkedList简介 LinkedList 是一个继承于AbstractSequentialList的双向链表.它也可以被当作堆栈.队列或双端队列进行操作. D ...
- java中需要用equals来判断两个字符串值是否相等
在C++中,两个字符串比较的代码可以为: (string1==string2) 但在java中,这个代码即使在两个字符串完全相同的情况下也会返回false Java中必须使用string1.equal ...
- longest-substring-with-at-least-k-repeating-characters
https://leetcode.com/problems/longest-substring-with-at-least-k-repeating-characters/ public class S ...
- 记录cocos2d-html5与cocosd-x jsb中遇到的坑
这两天开始用coco2d-html5写游戏, 但最终是发布到手机上, 写的js代码是跑在jsb上的. 在此记录下遇到的坑. 注:cocos2d-x 简称 cx, cocos2d-html5 简称ch ...
- Android中XML解析-SAX解析
昨天由于时间比较匆忙只写了Android中的XML解析的Dom方式,这种方式比较方便,很容易理解,最大的不足就是内容多的时候,会消耗内存.SAX(Simple API for XML)是一个解析速度快 ...
- maven mvn Failed during checkstyle execution
maven 命令默认强制使用checkstyle, 造成 命令运行失败 并报错: Failed during checkstyle execution 关闭checkstyle,命令如下: mvn [ ...
- 在Servlet的init方法中创建线程
servlet代码如下: package com.weichat.servlet; import java.io.IOException; import javax.servlet.ServletEx ...
- 两个JS对象怎样才能相等
在JS中,两个对象如何才能相等?下面的两个 Alert,只有一个输出true. 在JS中如何才能构造出两个JS对象相等? var prop1 = {asd:{def:'abc'}}; var pro ...
- 如果不用jQuery,Ajax你还能写出多少?
许久之前发过一篇关于Ajax的博客,通篇讲的都是通过jQuery编写Ajax,可能因为jQuery在这方面做的实在太好,以至于突然发现不用jQuery的话自己都模糊了Ajax的写法,这里重温一下. F ...
- JavaScript Event Delegation, and event.target vs. event.currentTarget
原文:https://medium.com/@florenceliang/javascript-event-delegation-and-event-target-vs-event-currentta ...