智能手機(jī)的應(yīng)用開發(fā)也隨著手機(jī)的發(fā)展成為一個火熱的行業(yè),有著不錯的收入。為了方便而有效的進(jìn)行開發(fā)選擇一套合適的開發(fā)模式是十分重要的。智能手機(jī)APP的開發(fā)模式可以分為三類分別是Native APPWeb APP和Hybrid APP開發(fā)模式。
1三種移動APP開發(fā)模式
1. Native APP
NativeAPP開發(fā)模式,即本地開發(fā)模式,又稱為傳統(tǒng)型開發(fā)模式。這種開發(fā)模式基于移動終端的操作系統(tǒng)進(jìn)行開發(fā),可以良好的利用系統(tǒng)的硬件資源。其缺點(diǎn)也是顯而易見的,其應(yīng)用只能在一種移動終端的系統(tǒng)中安裝使用,而且由于APP對硬件的依賴,應(yīng)用升級會比較麻煩。
1.2 Web APP
Web APP開發(fā)模式基本依靠網(wǎng)絡(luò)技術(shù)實(shí)現(xiàn)。其APP 是一個針對手機(jī)優(yōu)化后的 Web站點(diǎn),優(yōu)點(diǎn)是實(shí)現(xiàn)了跨平臺,而且對硬件幾乎沒有依賴,開發(fā)周期短。缺點(diǎn)也很明顯,APP 對網(wǎng)絡(luò)的依賴很大,數(shù)據(jù)基本都來自服務(wù)器,因此網(wǎng)絡(luò)狀況會直接影響用戶體驗(yàn)。在沒有網(wǎng)絡(luò)的情況下,APP的功能基本不能使用。而且APP無法調(diào)用手機(jī)的硬件API功能受到一定的限制。
1.3 Hybrid APP
HybridAPP開發(fā)模式即混合開發(fā)模式。這種開發(fā)模式使用第三方的跨平臺開發(fā)框架,將一種語言開發(fā)出應(yīng)用兼容到不同的移動設(shè)備上。這樣開發(fā)者就可以用java Web技術(shù)或另一種不針對某具體系統(tǒng)的第三方的開發(fā)技術(shù),實(shí)現(xiàn)應(yīng)用的功能。APP同時具有了跨平臺性和不錯的硬件資源調(diào)用能力。
2三種開發(fā)模式的環(huán)境配置及APP運(yùn)行
2.1 Hybrid APP的PhoneGap開發(fā)框架
Nitobi公司(現(xiàn)在已被Adobe公司收購)推出了基于Web技術(shù)的移動解決方案PhoneGap,這一方案在其官網(wǎng)上的定義是“可以使用Web技術(shù)編寫手機(jī)本地應(yīng)用程序的Htm15應(yīng)用程序平臺”。簡單來說PhoneGap是一套基于Htm15的移動應(yīng)用開發(fā)框架6PhoneGap開發(fā)框架成功將Java Web開發(fā)技術(shù)應(yīng)用到了移動設(shè)備的開發(fā)上。已經(jīng)具備 Java Web開發(fā)能力的開發(fā)者們可以使用熟知的HTML、CSS和JavaScript來開發(fā)手機(jī)APP。
PhoneGap 開發(fā)框架支持包括IOS、Android、Windows Phone在內(nèi)的多種手機(jī)平臺。開發(fā)者通過PhoneGap 提供的插件可以調(diào)用API使用攝像頭聯(lián)系人、地理定位等功能。PhoneGap 的使用是免費(fèi)的它的兼容性強(qiáng)而且開發(fā)成本低。但PhoneGap本身也有不少缺點(diǎn),它的運(yùn)行需要依靠移動設(shè)備具有內(nèi)置的瀏覽器引擎WebKit,PhoneGap的APP運(yùn)行速度較慢,硬件調(diào)用能力也不如Native APP。安卓手機(jī)使用 PhoneGap 框架開發(fā)的Hy-bridAPP的基本結(jié)構(gòu)。
2.2PhoneGapAPP開發(fā)環(huán)境搭建
開發(fā)PhoneGap APP可以使用Dreamweaver工具來制作Java Web頁面,并使用 PhoneGap Build(PhoneGap的在線編譯云服務(wù))生成安裝包。但如果想測試某一平臺的硬件功能,就必須配置對應(yīng)的開發(fā)環(huán)境,再進(jìn)行編譯和測試。例如安卓開發(fā)的SDK工具包提供了手機(jī)模擬器,可以在PC機(jī)上進(jìn)行APP測試。
下面介紹在配置好安卓開發(fā)環(huán)境后,如何使用PhoneGap框架開發(fā)應(yīng)用。首先,下載好 PhoneGap的工具包,打開 Eclipse后,按照創(chuàng)建步驟,新建一個安卓應(yīng)用項(xiàng)目。復(fù)制cordova-xxxjar 文件到項(xiàng)目中的lib 文件夾下,右擊該jar 文件添加引用。然后在項(xiàng)目的assets 目錄下新建文件,復(fù)制 PhoneGap 工具包內(nèi)的cordovajs 文件到個文件夾下,并創(chuàng)建Ja-va Web運(yùn)行的級聯(lián)樣式表,Html文件和其他is 文件。創(chuàng)建完成后的文件結(jié)構(gòu)。
另外,安卓的應(yīng)用需要依靠Activity啟動。要讓Activity啟動后,加載html頁面并運(yùn)行JavaScript代碼,需要對Activity進(jìn)行修改。改動包括兩步,要將Activity 繼承的類改為 DroidGap,導(dǎo)人需要的cor-dova包。然后將 setContentView(R.layout.activi-ty-main)改為 super.loadUrl(“file://android-asset/www/indexhtml”)其中www是新建的文件夾的名字index.html是該文件夾下的html文件
編寫好文件夾下的html和is代碼生成apk安裝到安卓手機(jī)上就可以運(yùn)行了。
2.3NativeAPP的開發(fā)環(huán)境配置及APP運(yùn)行
對于Native APP發(fā)模式,不同的手機(jī)系統(tǒng)都有套成熟的開發(fā)框架與對應(yīng)的開發(fā)語言”。例如,蘋果手機(jī)的APP需要用Object-C 編寫,AndroidAPP主要用Java開發(fā),而屬于微軟公司的Win-dows Phone應(yīng)用主要使用C#語言開發(fā)。如圖4 所示是安卓手機(jī)的Native APP的基本結(jié)構(gòu)。其中Activity可以理解為活動窗口或者是一個單獨(dú)的頁面,它是與用戶交互的最基本的成像單元。在XMI文件中記錄了手機(jī)頁面的組件信息,Activity啟動后加載XML文件顯示頁面。開發(fā)者在 Activity里編寫Java代碼綁定組件,給綁定的組件添加監(jiān)聽事件,在監(jiān)聽事件中實(shí)現(xiàn)功能和API的調(diào)用。
Android手機(jī)的Native APP開發(fā)環(huán)境配置主要包括兩個方面,一方面是配置程序設(shè)計語言的運(yùn)行環(huán)境,需要下載JDK工具包并安裝。另一方面是開發(fā)平臺的搭建,需要將安卓開發(fā)的ADT插件安裝到eclipse 開發(fā)平臺上,并用SDK 工具配置好安卓虛擬機(jī)JDK工具包只需要點(diǎn)擊按照提示即可安裝,配置完環(huán)境變量成后在dos下輸人命令java – version,若顯示 java 的版本則安裝成功。ADT的安裝需要打開 Eclipse,選擇工具欄的安裝新軟件,輸入地址https://dl-ssl.google.com/android/eclipse/,進(jìn)行在線安裝。最后是虛擬機(jī)的創(chuàng)建,要將下載好的SDK包解壓并將路徑配置到 Eclipse 上,隨后在 eclipse 的工具欄打開AVD Manager下載適合自己的手機(jī)系統(tǒng)鏡像并更新到對應(yīng)的平臺工具。然后打開SDKManager 創(chuàng)建一臺虛擬機(jī),環(huán)境配置工作就基本完成了。
2.4WebAPP的環(huán)境配置及APP運(yùn)行
Web APP開發(fā)模式的環(huán)境搭建主要是服務(wù)器端的環(huán)境搭建,Web APP的使用一般是用手機(jī)自帶的瀏覽器訪問站點(diǎn),不需要下載安裝。這里選擇Java Web的應(yīng)用。Java Web的開發(fā)環(huán)境配置,需要下載Java EE 版的 Eclipse,安裝Tomcat服務(wù)器并配置Java運(yùn)行環(huán)境。僅僅靠 Java Web 技術(shù)開發(fā)出的頁面并不適合手機(jī)顯示,界面往往太大,操作起來也不方便。開發(fā)者可以使用成熟的移動 Web 開發(fā)框架來解決這個問題?,F(xiàn)在已經(jīng)有了很多優(yōu)秀的移動 Web開發(fā)框架,例如Sencha TouchjQuery Mobile、DHTMLXTouch等。這些框架對HTML5和CSS3都有不錯的支持。用JQuery Mobile界面奈材創(chuàng)建的 Web APP在安卓模擬器上運(yùn)行的效果。
出處 長春理工大學(xué)學(xué)報(自然科學(xué)版)
原標(biāo)題 移動APP開發(fā)模式研究
作者 李莉 張超然 劉丹 李紀(jì)成
版權(quán)聲明:本文內(nèi)容由互聯(lián)網(wǎng)用戶自發(fā)貢獻(xiàn),該文觀點(diǎn)僅代表作者本人。本站僅提供信息存儲空間服務(wù),不擁有所有權(quán),不承擔(dān)相關(guān)法律責(zé)任。如發(fā)現(xiàn)本站有涉嫌抄襲侵權(quán)/違法違規(guī)的內(nèi)容, 請發(fā)送郵件至 舉報,一經(jīng)查實(shí),本站將立刻刪除。