移動(dòng)應(yīng)用04-Android云與移動(dòng)端結(jié)合的應(yīng)用開發(fā)_第1頁
移動(dòng)應(yīng)用04-Android云與移動(dòng)端結(jié)合的應(yīng)用開發(fā)_第2頁
移動(dòng)應(yīng)用04-Android云與移動(dòng)端結(jié)合的應(yīng)用開發(fā)_第3頁
移動(dòng)應(yīng)用04-Android云與移動(dòng)端結(jié)合的應(yīng)用開發(fā)_第4頁
移動(dòng)應(yīng)用04-Android云與移動(dòng)端結(jié)合的應(yīng)用開發(fā)_第5頁
已閱讀5頁,還剩24頁未讀, 繼續(xù)免費(fèi)閱讀

下載本文檔

版權(quán)說明:本文檔由用戶提供并上傳,收益歸屬內(nèi)容提供方,若內(nèi)容存在侵權(quán),請進(jìn)行舉報(bào)或認(rèn)領(lǐng)

文檔簡介

中程在線(北京)科技內(nèi)部教程注意保密Android移動(dòng)應(yīng)用課程

第4章

云與端整合

的應(yīng)用開發(fā)

所謂「云計(jì)算」(CloudComputing)就是一般所說的「網(wǎng)絡(luò)運(yùn)算」,由于網(wǎng)絡(luò)工程師們在繪制示圖形時(shí),常以一朵云來代表「網(wǎng)絡(luò)」。后來,「網(wǎng)絡(luò)運(yùn)算」就通稱為云計(jì)算,它讓人人能透過網(wǎng)絡(luò)連結(jié)到遠(yuǎn)在天邊云宵外的主機(jī)群,共享遠(yuǎn)程的計(jì)算能力和資源。

介紹云計(jì)算概念云計(jì)算利用虛擬化等技術(shù)來創(chuàng)造和普及計(jì)算機(jī)中的各種共享的運(yùn)算資源。

云計(jì)算的除了提供使用者更妥善的效勞之外,對(duì)企業(yè)而言,由于云效勞不需要將軟件安裝在用戶自己的計(jì)算機(jī)中,而是透過共享云宵外的擁有妥善管理的主機(jī)群資源,因而能夠有效的降低本錢與風(fēng)險(xiǎn)。目前著名的云計(jì)算公司包括:

-Amazon把其運(yùn)算資源供外界使用;

-Facebook提供各式各樣的應(yīng)用軟件,進(jìn)入網(wǎng)站之后立即可使用其軟件處里與個(gè)人的相關(guān)資料;

-Google提供Servlet效勞端程序API,也提供許多應(yīng)用軟件,如電子郵件效勞Gmail等。

認(rèn)識(shí)云架構(gòu)---以GoogleAppEngine為例**此圖摘自Google公司的PPT文檔AppEngine的架構(gòu)

(1):**此圖摘自Google公司的PPT文檔AppEngine的架構(gòu)

(2):**此圖摘自Google公司的PPT文檔AppEngine是Google的云效勞引擎,第三方應(yīng)用程序開發(fā)者能開發(fā)應(yīng)用程序(AP),然后放在Google效勞器上執(zhí)行,不需擔(dān)憂頻寬、系統(tǒng)負(fù)載、平安維護(hù)等問題,一切由Google代管。只要AP每月不超過500萬網(wǎng)頁面的流量就可享受免費(fèi)的待遇。AppEngine支持多種程序語言??梢允褂盟鼈儊斫ㄖ媚脑茖討?yīng)用程序。AppEngine提供Java和Python執(zhí)行階段環(huán)境,以確保應(yīng)用程序能夠快速而平安地執(zhí)行。把WebApp都放到云層上的目的是:-讓所有開發(fā)者能使用云計(jì)算。-讓瀏覽器更具威力。-讓云和端更和諧。開發(fā)AppEngine的

云層應(yīng)用程序AppEngine使用JavaVM執(zhí)行Java網(wǎng)絡(luò)應(yīng)用程序(WebApplication)。其支持JavaServlet標(biāo)準(zhǔn),可以在WAR目錄里提供給用程序的servlet類別、JSP、web.xml等設(shè)定檔,讓AppEngine根據(jù)設(shè)定檔呼叫servlet來提供各項(xiàng)效勞。

AppEngine的JavaSDK提供多種工具,可讓您測試應(yīng)用程序、上傳應(yīng)用程序檔案,以及下載記錄數(shù)據(jù)。Android端能透過標(biāo)準(zhǔn)連接埠的HTTP(或HTTPS)與應(yīng)用程序聯(lián)機(jī)。假設(shè)要開始使用,可到s:///使用您的Google賬戶登入。然后,開始開發(fā)你的云層程序:AppEngine的APIget:可以傳遞URL參數(shù);而Post:那么不可以。

一般寫法:先用doGet(),然后在doPost()里呼叫doGet()函數(shù)。

get:透過header來傳遞數(shù)據(jù),有數(shù)量之限制;而post:那么是透過

body來傳輸數(shù)據(jù),沒有限制數(shù)量。最簡單的AppEngine

應(yīng)用程序范例packageguestbook;

import;

import.*;

publicclass

GuestbookServletextendsHttpServlet{

publicvoiddoGet(HttpServletRequestreq,

HttpServletResponseresp)

throwsIOException{

resp.setContentType("text/plain");

resp.getWriter().println("Hello,world");

}}此云層AP的架構(gòu)圖為:與云相連的Android端應(yīng)用開發(fā)

HTTP通信:HTTP(HyperTextTransferProtocol)用來傳輸XML格式的數(shù)據(jù)。

在Android移動(dòng)端應(yīng)用程序能與AppEngine端應(yīng)用程序進(jìn)行HTTP通信。Android移動(dòng)端應(yīng)用程序透過HttpPost和HttpPost對(duì)象來向AppEngine云層效勞發(fā)出HttpRequest請求,一旦AppEngine云層效勞接收到HttpRequest請求,會(huì)轉(zhuǎn)而調(diào)用云層應(yīng)用程序的doGet()和doPost()函數(shù)。Step-1.將myActivity應(yīng)用連結(jié)到一個(gè)myService,然后傳送POST請求給云層效勞。在Android移動(dòng)端

應(yīng)用程序范例Step-2.AppEngine云層效勞調(diào)用的servlet應(yīng)用程序的doGet()函數(shù)。Step-3.

一旦AppEngine云層的servlet程序收到HttpRequest請求,就回傳另一個(gè)String給Android應(yīng)用程序。Android移動(dòng)端應(yīng)用程序

范例代碼://myService.javapackagecom.misoo.pk01;//……..publicclassmyServiceextendsService{ privateIBindermBinder=null;//……… @Override publicvoidonCreate(){ super.onCreate();mBinder=newmyBinder();}

@OverridepublicIBinderonBind(Intentintent){returnmBinder;}publicStringdoMyGet(){//調(diào)用雲(yún)層的doGet()函數(shù)

GetMethodget=HttpUtils.sendMonitoredGETRequest(myServiceUri,null,newObject(),null);//取得來自雲(yún)層的回應(yīng)

Stringstr=HttpUtils.getMonitoredResponse(null,get);returnstr;}}

記得,必須宣告權(quán)限于AndroidManifest.xml里,如下

溫馨提示

  • 1. 本站所有資源如無特殊說明,都需要本地電腦安裝OFFICE2007和PDF閱讀器。圖紙軟件為CAD,CAXA,PROE,UG,SolidWorks等.壓縮文件請下載最新的WinRAR軟件解壓。
  • 2. 本站的文檔不包含任何第三方提供的附件圖紙等,如果需要附件,請聯(lián)系上傳者。文件的所有權(quán)益歸上傳用戶所有。
  • 3. 本站RAR壓縮包中若帶圖紙,網(wǎng)頁內(nèi)容里面會(huì)有圖紙預(yù)覽,若沒有圖紙預(yù)覽就沒有圖紙。
  • 4. 未經(jīng)權(quán)益所有人同意不得將文件中的內(nèi)容挪作商業(yè)或盈利用途。
  • 5. 人人文庫網(wǎng)僅提供信息存儲(chǔ)空間,僅對(duì)用戶上傳內(nèi)容的表現(xiàn)方式做保護(hù)處理,對(duì)用戶上傳分享的文檔內(nèi)容本身不做任何修改或編輯,并不能對(duì)任何下載內(nèi)容負(fù)責(zé)。
  • 6. 下載文件中如有侵權(quán)或不適當(dāng)內(nèi)容,請與我們聯(lián)系,我們立即糾正。
  • 7. 本站不保證下載資源的準(zhǔn)確性、安全性和完整性, 同時(shí)也不承擔(dān)用戶因使用這些下載資源對(duì)自己和他人造成任何形式的傷害或損失。

最新文檔

評(píng)論

0/150

提交評(píng)論