freepeople性欧美熟妇, 色戒完整版无删减158分钟hd, 无码精品国产vα在线观看DVD, 丰满少妇伦精品无码专区在线观看,艾栗栗与纹身男宾馆3p50分钟,国产AV片在线观看,黑人与美女高潮,18岁女RAPPERDISSSUBS,国产手机在机看影片

正文內(nèi)容

android與服務(wù)器端數(shù)據(jù)交互(已修改)

2025-06-19 07:30 本頁面
 

【正文】 Android與服務(wù)器端數(shù)據(jù)交互(基于SOAP協(xié)議整合android+webservice) 上一節(jié)中我們通過協(xié)議,采用HttpClient向服務(wù)器端action請(qǐng)求數(shù)據(jù)。當(dāng)然調(diào)用服務(wù)器端方法獲取數(shù)據(jù)并不止這一種。WebService也可以為我們提供所需數(shù)據(jù),?那么什么是webService呢?,它是一種基于SAOP協(xié)議的遠(yuǎn)程調(diào)用標(biāo)準(zhǔn),通過webservice可以將不同操作系統(tǒng)平臺(tái),不同語言,不同技術(shù)整合到一起。 我們?cè)赑C機(jī)器java客戶端中,需要一些庫,比如XFire,Axis2,CXF等等來支持訪問WebService,但是這些庫并不適合我們資源有限的android手機(jī)客戶端,做過JAVA ME的人都知道有KSOAP這個(gè)第三方的類庫,可以幫助我們獲取服務(wù)器端webService調(diào)用,當(dāng)然KSOAP已經(jīng)提供了基于android版本的jar包了,那么我們就開始吧:?首先下載KSOAP包:然后新建android項(xiàng)目:并把下載的KSOAP包放在android項(xiàng)目的lib目錄下:右鍵build pathconfigure build path選擇Libraries,如圖:以下分為七個(gè)步驟來調(diào)用WebService方法:第一:實(shí)例化SoapObject 對(duì)象,指定webService的命名空間(從相關(guān)WSDL文檔中可以查看命名空間),以及調(diào)用方法名稱。如:View Code //命名空間 private static final String serviceNameSpace=。 //調(diào)用方法(獲得支持的城市) private static final String getSupportCity=getSupportCity。//實(shí)例化SoapObject對(duì)象 SoapObject request=new SoapObject(serviceNameSpace, getSupportCity)。第二步:假設(shè)方法有參數(shù)的話,設(shè)置調(diào)用方法參數(shù)(參數(shù)名稱,參數(shù)值)。第三步:設(shè)置SOAP請(qǐng)求信息(參數(shù)部分為SOAP協(xié)議版本號(hào),與你要調(diào)用的webService中版本號(hào)一致):View Code //獲得序列化的Envelope SoapSerializationEnvelope envelope=new SoapSerializationEnvelope()。 =request。第四步:注冊(cè)Envelope,?(new MarshalBase64()).register(envelope)。第五步:構(gòu)建傳輸對(duì)象,并指明WSDL文檔URL:View Code //請(qǐng)求URL private static final String serviceURL=。//Android傳輸對(duì)象 AndroidHttpTransport transport=new AndroidHttpTransport(serviceURL)。 =true。第六步:調(diào)用WebService(其中參數(shù)為1:命名空間+方法名稱,2:Envelope對(duì)象):View Code (serviceNameSpace+getWeatherbyCityName, envelope)。第七步:解析返回?cái)?shù)據(jù):View Code if(()!=null){ return parse(())。 }/************** * 解析XML * @param str * @return */ private static ListString parse(String str){ String temp。 ListString list=new ArrayListString()。 if(str!=null amp。amp。 ()0){ int start=(string)。 int end=(。)。 temp=(start, end3)。 String []test=(。)。 for(int i=0。i。i++){ if(i==0){ temp=test[i].substring(7)。 }else{ temp=test[i].substring(8)。 } int index=(,)。 ((0, index))。 } } return list。 }這樣就成功啦。那么現(xiàn)在我們就來測(cè)試下吧,這里有個(gè)地址提供webService天氣預(yù)報(bào)的服務(wù)的,我這里只提供獲取城市列表:View Code //命名空間 private static final String serviceNameSpace=。 //請(qǐng)求URL private static final String serviceURL=。 //調(diào)用方法(獲得支持的城市) private static final String getSupportCity=getSupportCity。 //調(diào)用城市的方法(需要帶參數(shù)) private static final String getWeatherbyCityName=getWeatherbyCityName。 //調(diào)用省或者直轄市的方法(獲得支持的省份或直轄市) private static final String getSupportProvince=getSupportProvince。然后你可以在瀏覽器中輸入地址(WSDL):serviceURL,你會(huì)看到一些可供調(diào)用的方法:我們選擇獲取國內(nèi)外主要城市或者省份的方法吧:getSupport
點(diǎn)擊復(fù)制文檔內(nèi)容
試題試卷相關(guān)推薦
文庫吧 www.dybbs8.com
公安備案圖鄂ICP備17016276號(hào)-1