Android四款系統(tǒng)架構(gòu)工具整理
開發(fā)者若想開發(fā)出一款高質(zhì)量的應(yīng)用,一款功能強大的開發(fā)工具想必是不可或缺的。開發(fā)工具簡化了應(yīng)用的開發(fā)流程,也能使開發(fā)者在應(yīng)用開發(fā)本身投入更多的精力。本文就為大家?guī)?款實用的Android應(yīng)用架構(gòu)工具。
1.?Spring for Android
Spring for?Android是Spring框架在Android平臺上的擴展,旨在簡化Android原生應(yīng)用的開發(fā)流程,提高開發(fā)者的工作效率。Spring for?Android可以幫助開發(fā)者簡化應(yīng)用與服務(wù)器端交互和Auth授權(quán)驗證。
很多Android應(yīng)用都要與服務(wù)器進行交互,而現(xiàn)在很多應(yīng)用服務(wù)器都會提供REST服務(wù),數(shù)據(jù)格式一般是JSON、XML、RSS等,使用Spring for?Android將會大大地方便Android應(yīng)用與服務(wù)器端的交互。Spring for?Android能夠簡化JSON的解析工作。截至目前,Spring?for Android支持3個JSON第三方庫(Jackson?JSON?Processor、Jackson?2.x和Google?Gson)。另外,Spring?for Android中的Simple?XML?Serializer?也可以幫助開發(fā)者解析XML文件。
現(xiàn)在很多應(yīng)用都提供開放的API服務(wù),Android應(yīng)用往往要經(jīng)過授權(quán)才能接入這些服務(wù),而如今大多應(yīng)用都采用Auth授權(quán)認證,使用Spring?for Android可以幫助開發(fā)者快速地進行授權(quán)處理。
2.?GreenDroid
GreenDroid是一款高效的Android開發(fā)類庫,可以為開發(fā)者提供一個更為輕便的Android開發(fā)環(huán)境。
Android的開放性使得各種應(yīng)用的UI設(shè)計基本上喪失了一致性。不管是官方應(yīng)用還是第三方應(yīng)用,都選擇使用自己的UI交互,開發(fā)各種非標準的按鈕和控件。GreenDroid可以使開發(fā)者的應(yīng)用與Android生態(tài)系統(tǒng)保持一致,并試圖為開發(fā)者打造界面結(jié)構(gòu)與風格一致的開發(fā)環(huán)境。?
GreenDroid能夠很好地利用Android框架所提供的功能,幫助開發(fā)者提高應(yīng)用質(zhì)量,還能允許開發(fā)者隨時對應(yīng)用功能進行優(yōu)化。
XML作為承載數(shù)據(jù)的一個重要角色,如何利用XML成為Android開發(fā)中一項重要的技能。GreenDroid可以把XML文件解析到庫中,幫助開發(fā)者充分利用XML。
3.?Ignition
開發(fā)者通過使用Ignition所提供的即用組件和樣板文件的實用類,可以讓所開發(fā)的Android應(yīng)用快速起步。
Ignition涵蓋的區(qū)域包括:
Widget、Adapter、Dialog等UI組件;允許編寫簡單卻強大的網(wǎng)絡(luò)代碼的HTTP?Wrapper庫;加載遠程Web圖像并進行緩存的類;簡單但有效的緩存框架(將對所有對象樹做出響應(yīng)的HTTP緩存到內(nèi)存或硬盤中);Intents、diagnostics等幾個能讓API級別更容易向后兼容的幫助類;更友好、更強大的AsyncTask實現(xiàn)。
Ignition包括三個子項目:
Ignition-core——是一個可以直接編譯到App中的Android庫項目。Ignition-support——一個標準的Java庫項目,被部署為一個普通的JAR,包含了大部分實用工具類。開發(fā)者可以獨立使用該工程的核心模塊。Ignition-location——一個可以直接編譯到應(yīng)用程序中的Android?AspectJ庫項目。能夠讓定位應(yīng)用在不需要Activity位置更新處理的情況下獲取到最新的位置信息。
4.?DroidParts
DroidParts是Android開發(fā)中一組常用的開發(fā)組件,DroidParts可以給開發(fā)者帶來許多都意想不到的便利。DroidParts主要囊括以下幾個方面:
DI——DroidParts在注入Views、Services方面做到了真正的“開箱即用”效果,并且自定義依賴關(guān)系可以定義在DependencyProvider類中。ORM——通過利用Cursors和Fluent?API,DroidParts可以幫助開發(fā)者實現(xiàn)高效模型持久化。JSON——DroidParts中含有簡單的JSON生成和解析器,實現(xiàn)了對嵌套對象的高效處理。ImageFetcher——可以將圖片異步加載ImageViews中,同時支持淡入和淡出效果。RESTClient——可以向服務(wù)器發(fā)送各種HTTP請求(用戶也可以自定義請求方式和提交JSON對象),并顯示服務(wù)器響應(yīng)。
此外,DriodParts改進了AsyncTask和IntentService,支持應(yīng)用的異常處理和結(jié)果報告。