文|鄭曉霞
隨著3G、云計算等技術從概念轉為現實,移動互聯網迎來了高速、爆炸式的增長。移動互聯網應用的核心是手機。雖然移動互聯網應用需要服務器作為后臺的業務支撐,但手機上的終端服務和應用是吸引用戶的關鍵。由于智能手機提供了更為絢爛多彩的用戶界面、更多的應用程序,其增長速度遠遠超過了非智能手機。
目前智能手機移動平臺進入了全新的Android、iOS、Windows Phone三足鼎立的時代。Android因擁有良好的用戶界面和開放性受到各大手機廠商的追捧,成為市場占有率增長最快的智能移動平臺,也是目前市場占有率最大的移動平臺。根據美國市場研究公司Strategy Analytics的數據顯示,2012年第三季度,Android在中國智能手機市場的份額已經達到了88%。另一方面,Android Market的應用軟件數量也在以驚人的速度增長。在過去一年中,Google對Android終端下載的數字內容進行了整合,推出了官方統一的Play數字商城,已經擁有70萬款軟件,Android應用已經成為市場的主流。Android應用的豐富必然將帶動對Android終端的需求,推動Android終端的普及。
從開發者角度看,隨著Google公司Android新版本SDK的發布,Android熱潮正在全球范圍內迅速蔓延,各大廠商更是紛紛投入以Android為平臺的產品研發。有別于其他封閉的移動設備系統,Google一直以開放的角度歡迎廣大開發者加入Android行列,在程序語言方面也是選擇全球目前市場占有率最高的Java語言,這有別于Apple及Microsoft,除了降低軟件開發上的門檻,相比之下,也提升了軟件創意的想象空間。
Android不僅僅是一款手機操作系統,而更像是一個對任意開發者開放的移動終端開發平臺。該平臺是由操作系統、中間件、用戶界面以及應用程序組成,并且對外開放源代碼,一經推出便引起世界各地開源愛好者的關注。同時,Google與各大廠商的大力合作也大大的促進了Android新的手機業務不斷推出,同時也使得Android更加的標準化。Android系統架構為四層結構,從上層到下層分別是應用程序層、應用程序框架層、系統運行庫層以及Linux內核層,分別介紹如下:
Android平臺包含了許多應用程序,諸如SMS短信客戶端程序、電話撥號程序、圖片瀏覽器、Web瀏覽器等應用程序。這些應用程序都是用Java語言編寫的,并且這些應用程序都是可以被開發人員開發的其他應用程序所替換,這點不同于其他手機操作系統固化在系統內部的系統軟件,更加靈活和個性化。
應用程序框架層是我們從事Android開發的基礎,很多核心應用程序也是通過這一層來實現其核心功能的,該層簡化了組件的重用,開發人員可以直接使用其提供的組件來進行快速的應用程序開發,也可以通過繼承而實現個性化的拓展。
Android系統運行庫層可以分成兩部分,分別是系統庫和Android運行時。系統庫是應用程序框架的支撐,是連接應用程序框架層與Linux內核層的重要紐帶。Android運行時分為核心庫和Dalvik虛擬機兩部分。核心庫提供了Java語言API中的大多數功能,同時也包含了Android的一些核心API,如Android.os、Android.net、Android.media等等。每個Android程序都有一個Dalivik虛擬機的實例,并在該實例中執行。
Android是基于Linux2.6內核,其核心系統服務如安全性、內存管理、進程管理、網路協議以及驅動模型都依賴于Linux內核。
從技術角度而言,Android和iPhone相似,采用WebKit瀏覽器引擎,具備觸摸屏、高級圖形顯示和上網功能,用戶能夠在手機上查收電子郵件、 搜索網址和觀看視頻節目等。Android手機比iPhone等其他手機更強調搜索功能,界面也更強大,可以說是一種融入了全部Web應用的平臺。 Android的版本很多,隨著版本的更新,從最初的觸屏到現在的多點觸摸,從普通的聯系人到現在的數據同步,從簡單的Google Map到現在的導航系統,從基本的網頁瀏覽到現在的HTML 5,這都說明Android已經逐漸穩定,而且功能越來越強大。另外,Android不僅支持Java、C、C++等主流編程語言,還支持Ruby、 Rython等腳本語言,甚至Google專門為Android應用開發推出simple語言,這使得Android有著非常廣泛的開發群體。
基于Android平臺的開發,我們選擇的是Eclipse集成開發環境,因為它具有非常豐富的功能組,同maven無縫隙整合,能夠快速而簡便的進行代碼重組。蘋果的開發環境目前是Xcode 4。總的來說,Xcode 4依然落后于Java IDE。Xcode也提供一些開發包,但需要開發者支付100美元會員費。
和目前已經存在的其他智能操作系統相比,Android具有什么樣的優勢呢?
(1)開放性。Android完全開源,平臺從底層操作系統到上層的用戶界面和應用程序都不存在任何阻礙產業創新的專有權障礙。同時開源的最大好處是,使得Android平臺會擁有越來越壯大的開發者隊伍,并且隨著用戶與應用的日益豐富,必然會使得Android這個嶄新的平臺走向成熟與穩定。
(2)不受限任何限制的開發商。由于Android的開放性,所以不同的廠商可以根據自身的情況對Android平臺進行定制與擴展。這樣的一個好處便是,對于用戶來說,選擇一款Android的手機將會有更大的抉擇空間,更能展現自身的個性化。
(3)應用程序間無界限。Android打破了應用程序間的界限,開發人員可以將在自己開發的程序與本地聯系人、日歷、位置信息等很好的聯系起來。
(4)Android與Google服務的無縫集成,緊密結合Google應用。全球最大的在線搜索服務商Google在過去的10年中,已經逐漸的滲透進人們的日常生活中了。人們不再僅僅滿足于使用電腦終端來享受諸如Gmail、Google地圖、在線翻譯等在線服務,電腦終端到移動終端的延伸成了一種必然的趨勢。

圖1 新華社新聞Android版新聞分享頁面及排行頁面
新華社新聞客戶端是我們基于Android平臺自主研發的應用程序。該應用是新華社面向Android平臺的權威新聞發布窗口,依托新華社權威性、全球性報道優勢, 以全媒體形式全天候發布新聞信息和深度報道。我們研發的應用程序可以和后臺的發布系統無縫對接,并設有新聞、圖片、視頻等欄目,全景式報道焦點、國內、國際、財經、體育、社會、生活等新聞,用戶可以充分享受由龐大新聞數據庫和遍布全中國、全世界采編力量支撐的新華社一流的新聞服務, 見證中國發展, 領略世界精彩, 共享文明成就。
在此基礎上,我們還致力于為用戶提供互動性的全新體驗。幾經探索和嘗試,我們在基礎框架上成功研發了社交化媒體分享,文章排行,郵件互動,微博互動及動畫特效等功能,提高用戶體驗,滿足用戶溝通、交流、參與、反饋、貢獻的需求。
為了使用戶隨時隨地將感興趣的文章分享到微博,人人網,開心網的等社會化媒體,我們實現了文字、圖片、視頻等多媒體新聞的社會化媒體分享功能。在功能實現上首先創建一個Options菜單,該菜單項為“分享”。當點擊菜單項時,創建一個Intent。該Intent設置為發送給支持 ACTION_SEND的Activity。我們用兩個putExtra給Intent設置了SUBJECT和CONTENT的數據,再用 startActivity方法讓系統調用適當的Activity執行。createChooser方法接受Intent做參數,也同時接納了 Intent里要求的filter(ACTION_SEND),只有支持ACTION_SEND的Activity才會被列入可選分享列表。
由于客戶端每天發稿量很大,用戶往往傾向于優先瀏覽關注度較高的熱點新聞,因此,我們為客戶端增加了文章排行功能。用戶可以在關注的欄目中查看按點擊次數排序的新聞列表。我們調用程序請求后臺根據用戶點擊量生成的欄目排行JSON文件。JSON是一種輕量級的數據交換格式,具有良好的可讀和便于快速編寫的特性。和 XML 一樣,JSON 也是基于純文本的數據格式。我們在程序中自定義了ColumnResolver類用來解析欄目排行數據,將解析出的名值對存入HashMap供前端展示調用。
因為要訪問外部網絡,所以要在AndroidManifest.xml文件里增加一行安全許可:
我們的主程序中以EditText作為郵件互動功能的內容組件,當用戶輸入完成后,單擊發送按鈕發送郵件,程序調用Android系統的郵件API,再通過Intent過濾并向程序內預設好的后臺接收人的郵件地址發送郵件,將用戶提交的建議發給后端系統。
為了提高互動性,我們在新華社新聞客戶端中內置了新華視點微博,供用戶瀏覽查看。我們選取內置WebKit引擎的WebView實現微博互動。我們首先調用WebView.loadURL來加載新華視點微博的網址,傳入參數值strURI字符串,然后交由WebView.setWebViewClient()處理,利用WebView.loadData將HTML TAG傳給WebView對象,最后在客戶端展示。
為了提高用戶體驗,在用戶瀏覽圖片時,我們添加了屏幕自動翻轉的動畫效果。我們先定義好動畫的XML文件,在配置文件通過
移動互聯網已經進入了爆炸式增長的時期,3G 、三網合一、云計算技術也已經從理論變為現實。通過手機獲得新聞資訊已經成為用戶的首選。在新媒體影響力逐漸增大的時候,新聞客戶端在新媒體報道中發揮著更加重要的作用。這要求我們不斷勇于探索,自主創新,為用戶提供更多更好的互動體驗功能,充分發揮手機新媒體及時快捷、貼近性強、參與度高、互動性好的優勢,不斷提升我社報道的表現力、吸引力及感染力。■