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