偷偷摘套内射激情视频,久久精品99国产国产精,中文字幕无线乱码人妻,中文在线中文a,性爽19p

使用PhoneGap開啟移動(dòng)開發(fā)之旅

移動(dòng)開發(fā) Android
移動(dòng)市場(chǎng)風(fēng)起云涌,只是好像和悲催的.net程序員隔絕。我們內(nèi)心中一直期待的Windows Phone終究不能匹及windows, 隨著時(shí)間的流逝,windows phone越來越像扶不起的阿斗,連微軟自己有念頭放棄. 看新聞上,微軟打算讓windows phone支持Android應(yīng)用,Nokia出了Android手機(jī)……

移動(dòng)市場(chǎng)風(fēng)起云涌,只是好像和悲催的.net程序員隔絕。我們內(nèi)心中一直期待的Windows Phone終究不能匹及windows, 隨著時(shí)間的流逝,windows phone越來越像扶不起的阿斗,連微軟自己有念頭放棄. 看新聞上,微軟打算讓windows phone支持Android應(yīng)用,Nokia出了Android手機(jī)……

.Net開發(fā)人員在移動(dòng)市場(chǎng)中該何去何從? 下面介紹的PhoneGap, 也許是我們的一個(gè)選擇。

一,什么是PhoneGap?

移動(dòng)應(yīng)用非?;馃?,無奈開發(fā)平臺(tái)實(shí)在太多。大的平臺(tái)就有Android和iOS, 還有其它的平臺(tái),比如Windows Phone, BlackBerry…… 不同的開發(fā)平臺(tái)上又需要不同的開發(fā)語言,開發(fā)Android,需要學(xué)習(xí)Java; 開發(fā)iOS應(yīng)用需要學(xué)習(xí)Object-C.

跨平臺(tái)不是各大公司一直努力的方向嗎?不過最終為了自己的算盤,還是打開了這個(gè)潘多拉魔盒。當(dāng)苦逼的程序員在Android上實(shí)現(xiàn)了的App又要到iOS上實(shí)現(xiàn)一遍,這和我們的追求的原則DRY(DO NOT REPEAT YOURSELF)違背呀。

那么在移動(dòng)端,就沒有跨平臺(tái)的開發(fā)方式了嗎?其實(shí)一直都有,真正能夠跨平臺(tái)的是HTML + CSS + JS. 也就是Web App. 無論任何平臺(tái),只要有瀏覽器,就都能使用Web App. 但是Web App有局限性,無法調(diào)用和操作本地設(shè)備,比如攝像頭, GPS, 推送消息等。

而PhoneGap就是為了解決這個(gè)問題的,它能夠既讓我們的使用HTML +CSS +Js開發(fā)應(yīng)用,還能讓我們像本地App一樣,方便的調(diào)用設(shè)備和操作系統(tǒng)交互。

二, PhoneGap是如何做到的?

使用HTML+CSS+Js開發(fā)的Web App, 會(huì)被PhoneGap包裝成WebView, 嵌入到發(fā)布App中。這樣最后打包的App實(shí)際上就是一個(gè)外殼,外殼中包裝的就是我們開發(fā)的Web App. 針對(duì)不同的平臺(tái),PhoneGap會(huì)使用不同的平臺(tái)編譯打包。

對(duì)于Native API的調(diào)用,是通過Js調(diào)用完成的。這些調(diào)用的代碼同樣會(huì)被PhoneGap翻譯成不同平臺(tái)的代碼,從而實(shí)現(xiàn)對(duì)于和不同設(shè)別的交互。也就是下圖中的Phone Gap Bridge做的事情。

phonegap 

三,PhoneGap的優(yōu)點(diǎn)和不足

看到上面的簡(jiǎn)單介紹,PhoneGap的優(yōu)點(diǎn)應(yīng)該呼之欲出了:

1. 跨平臺(tái)

借用Java的廣告語, PhoneGap實(shí)現(xiàn)了移動(dòng)平臺(tái)上的Write once, run anywhere.

PhoneGap目前支持的移動(dòng)平臺(tái)有: Android, iOS, Windows Phone, Windows 8, Firefox OS, Amazon Fire OS, BlackBerry 10, Ubuntu, Tizen.(這下大家都滿足了吧?。?/p>

2. 性價(jià)比高,開發(fā)難度低

只要會(huì)HTML+CSS+JS,你就能開發(fā)在多達(dá)8個(gè)移動(dòng)平臺(tái)上運(yùn)行的App, 還有比這更具性價(jià)比的技術(shù)嗎?

相信會(huì)HTML的前端的開發(fā)人員,應(yīng)該是比任何其它一種開發(fā)語言的人要多得多吧。不過服務(wù)器端開發(fā),還是要掌握一門其它語言的,PHP, Java, .net, Ruby還是Python,這個(gè)就沒有限制了。

但是,兼容性越強(qiáng)的技術(shù),成本越低,性能越差;兼容性越差的技術(shù),成本越高,性能越好。PhoneGap能兼容那么多的平臺(tái),自然是效率不太好。下面就說說PhoneGap的不足

PhoneGap的不足:

1. 運(yùn)行效率

PhoneGap的運(yùn)行,依賴于移動(dòng)設(shè)備上的內(nèi)置瀏覽器的Webkit, 所以運(yùn)行速度上自然是比Native App慢。

2. 不能支持全部的系統(tǒng)API

由于要支持多平臺(tái), 所以如果一些平臺(tái)上獨(dú)有的API, 在PhoneGap上就有可能不能得到及時(shí)的支持。

在今天千元以內(nèi),就能買到四核手機(jī)的年代,一般App是不太存在運(yùn)行效率問題的。但是如果你要開發(fā)一款復(fù)雜的3D游戲,那么Native App肯定是最佳選擇

另外,個(gè)人認(rèn)為,PC上的歷史必將在Mobile上重演,最終會(huì)走向Web化。

四,PhoneGap開發(fā)環(huán)境安裝Step by Step

按照官方文檔上的介紹安裝,滿滿的很多坑。下面詳細(xì)介紹如何在Windows下安裝PhoneGap開發(fā)環(huán)境。下面列出的下載地址只是寫文章的當(dāng)下有效,以后可能會(huì)失效,如果失效,可以自行到官方網(wǎng)址下載。

1. 安裝Node.js

上Node.js官方網(wǎng)站上http://www.nodejs.org/download/ 。下載Nodejs安裝包裝上。

安裝完成后,把Nodejs的路徑加入到系統(tǒng)變量Path中。

windowspath

2. 安裝Cordova CLI(cordova command-line interface)

在命令行中運(yùn)行中安裝Cordova CLI

image

如果是說npm命令沒有找到,那就是Path配置有問題。如果你悲催的出現(xiàn)安裝錯(cuò)誤,那是因?yàn)镚FW 蛋疼的把 https://registry.npmjs.org 給墻了,導(dǎo)致無法通過 NPM 安裝模塊。需要為

npm配置代理。

npm config set proxy=http://127.0.0.1:9999

npm config set https-proxy=http://127.0.0.1:9999

上面的代理地址需要更換成你自己的。

3. 配置Android開發(fā)平臺(tái)

3.1 下載安裝最新JDK

上官方網(wǎng)址下載并安裝最新JDK

http://www.oracle.com/technetwork/java/javase/downloads/jdk8-downloads-2133151.html

3.2 下載Android SDK

上官方網(wǎng)址下載并安裝最新Android SDK

http://developer.android.com/sdk/index.html

3.3 下載Apache Ant

上官方網(wǎng)址下載并安裝最新Android SDK

http://ant.apache.org/bindownload.cgi

3.4 配置環(huán)境變量

添加新的環(huán)境變量, 根據(jù)安裝路徑,調(diào)整下面的路徑:

ANDROID_HOME                 Value: C:\Program Files\adt-bundle-windows-x86_64-20140321\sdk

ANT_HOME                             Value: C:\Program Files\apacheant

JAVA_HOME                           Value: C:\Program Files\Java\jdk1.8.0_05

添加Path

%JAVA_HOME%\bin;%ANT_HOME%\bin;%ANDROID_HOME%\platform-tools;%ANDROID_HOME%\tools;

#p#

五,第一個(gè)Android App: Hello World

首先,在你要?jiǎng)?chuàng)建項(xiàng)目的文件夾路徑下,運(yùn)行下面的命令創(chuàng)建HelloWorld項(xiàng)目

image

接著,為該項(xiàng)目添加Android平臺(tái)支持。

image

然后,在Android SDK的安裝目錄中,有SDK Manager.exe程序,在命令行中啟動(dòng)該程序。

在Tools->Manage AVDs中,創(chuàng)建一個(gè)新的Android模擬器。

image

最后就可以開始在Android平臺(tái)上編譯和運(yùn)行我們的的第一個(gè)PhoneGap程序了

image

image

啟動(dòng)運(yùn)行的結(jié)果:

image 

六,深入開發(fā)

上面的App顯示的畫面,其實(shí)就是我們創(chuàng)建的HelloWorld項(xiàng)目中的www目錄下的index.html

image

開發(fā)一個(gè)跨平臺(tái)的應(yīng)用程序,只是需要我們?cè)趙ww目錄下,做好web app就可以了。

這里的選擇就更多了,可以使用BootStrap, JqueryMobile………

另外,需要再系統(tǒng)學(xué)習(xí)一下PhoneGap中的如何調(diào)用系統(tǒng)API.

本文出自:http://www.cnblogs.com/JustRun1983/p/3819433.html

責(zé)任編輯:林師授 來源: 博客園
相關(guān)推薦

2011-07-19 13:26:50

iPhone PhoneGap 框架

2010-10-09 15:01:27

PhoneGapiPhoneAndroid

2011-07-01 15:02:53

PhoneGap移動(dòng)開發(fā)框架

2011-08-31 15:15:20

PhoneGap

2011-07-05 17:22:30

PhoneGapSymbian

2012-03-07 14:29:01

DreamweaverjQueryPhoneGap

2012-03-30 15:54:43

ibmdw

2012-03-09 16:25:09

PhoneGapDreamweaverWeb應(yīng)用

2011-08-01 09:43:08

PhoneGap 1.PhoneGap

2012-02-01 09:59:05

TitaniumPhoneGapiOS

2012-10-09 11:02:55

IBMdw

2012-05-24 13:25:37

TitaniumPhoneGapAppcelerato

2021-04-14 18:54:20

Kubernetes開發(fā)工具開發(fā)

2011-07-05 17:29:53

PhoneGapevents

2011-09-13 09:49:59

PhoneGap插件

2011-10-08 10:15:40

AdobePhoneGapNitobi

2011-07-21 09:41:30

SQL ServerDenali

2011-07-21 09:32:33

SQL ServerDenali

2021-11-30 09:00:00

TypeScriptJ??avaScrip開發(fā)

2011-12-23 10:02:37

PhoneGapAndroid插件
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)