<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計應(yīng)用 > 開發(fā)MIDP聯(lián)網(wǎng)應(yīng)用程序

          開發(fā)MIDP聯(lián)網(wǎng)應(yīng)用程序

          作者: 時間:2012-05-07 來源:網(wǎng)絡(luò) 收藏

          ♦引言

          本文引用地址:http://www.ex-cimer.com/article/149128.htm

          在上講中,我們介紹了如何利用RecordStore把數(shù)據(jù)保存在終端內(nèi)。本講,我們將闡述JAVA網(wǎng)絡(luò)的相關(guān)功能。由于N800終端只能使用HTTP通信,所以我們將以HTTP為主要范例進(jìn)行講解。到目前為止,只能制作終端內(nèi)的單機(jī)型,如果利用網(wǎng)絡(luò),連接網(wǎng)絡(luò)服務(wù)器,那么就能夠制作出多種。

          1.利用網(wǎng)絡(luò)

          1.1.GenericConnectionFrameWork

          J2ME應(yīng)該能支持各種手機(jī)終端。由于終端不同其網(wǎng)絡(luò)功能及文件I/O功能也迥然不同,網(wǎng)絡(luò)和文件I/O關(guān)聯(lián)的圖書館所需的條件也不同。

          為了解決上述問題,JSME的CLDC采用了GenericConnectionframework。GenericConnectionframework擁有不同終端所需的省空間網(wǎng)絡(luò)功能以及文件I/O功能。廣泛應(yīng)用J2SE的java.io和java.net包里的網(wǎng)絡(luò)、文件I/O功能,并準(zhǔn)備7個interface。這樣,為能支持各種手機(jī)終端的通信功能,只限定interface,在每個手機(jī)終端上都能自由安裝。不支持手機(jī)終端連接的實際安裝不能進(jìn)行。各種interface的說明如表1所示、層次結(jié)構(gòu)如圖1所示。

          360截圖20120507113658104.jpg

          點擊圖片看大圖

          表1

          圖1

          1.2.ConnectionInterface

          Connectioninterface在GenericConnectionframework中是連接interface的基礎(chǔ)interface。其他的連接interface是從Connectioninterface派生而來的。

          1.3.Connector類

          使用Connector類的static方法open(StringconnectString)入網(wǎng)。

          Connectioncon=Connector.open(http://www.nec-mfriend.com/);

          ex.1

          例如、如ex.1所示,在open方法的自變量中輸入“http://www.nec-mfiend.com/”,就可以實現(xiàn)與www.nec-mfriend.com服務(wù)器進(jìn)行http通信。

          而GenericConnectionframework的全部鏈接都是利用Connector類的open方法完成的。也就是說,即使鏈接類型不同,也能以同樣的方法完成。J2ME由于這樣的設(shè)計而擁有豐富的擴(kuò)展性,對于上述新的裝置它也配備了簡單的支持系統(tǒng)。

          按照下述形式指定Open方法的自變量。

          {protocol}:[{target}][{params}]

          在Protocol部分可以指定如下所示的Protocol。

          360截圖20120507113844495.jpg

          表2

          *N800不支持socket通信、數(shù)據(jù)電報通信,而N820支持socket通信。

          在Target部分指定服務(wù)器的用戶名、端口號和文件名等。若有必要的添加信息則在Params部分指定。

          Open方法也可以指定其他的自變量。

          staticConnectionopen(StringconnectString,intmode)

          從connectString中制作Connection、打開鏈接,若要使用mode鏈接則需指定accessmode。在accessmode中,可以指定Connector.READ,Connector.READ_WRITE和Connector.WRITE,若不指定,則為Connector.READ_WRITE。在Protocol中不能指定accessmode時,則放棄IllegalArgumentException。

          下表是其他Connector類的static方法。

          360截圖20120507113944271.jpg

          1.4.HTTP通信

          現(xiàn)在,我們對N800所支持的HTTP通信進(jìn)行闡述。利用HTTP通信可以連接WEB服務(wù)器。例如,可以把手機(jī)終端難以處理的復(fù)雜問題交給WEB服務(wù)器處理,得出結(jié)果。HTTP通信采用方法作為標(biāo)準(zhǔn),但是,采用作為基本方法的終端卻不能進(jìn)行HTTP通信,或者有很大的限制,這一點請注意。

          為能在N800中使用HTTP通信需遵從以下規(guī)定。

          •要實現(xiàn)MIDlet通信必須在JAD(ADF)文件中設(shè)定MIDlet-UseNetwork(參考3.JAD(ADF)文件)為YES。.

          •最大發(fā)送量為10kbyte。

          大于10kbyte時,超出部分被清除,小于10kbyte的數(shù)據(jù)才是有效的。

          •最大接收量為100kbyte。

          大于100kbyte時,超出部分被清除,小于100kbyte的數(shù)據(jù)才是有效的。

          •連接處URL

          從http://開始,包含http://,最多為512byte。不分大/小寫。

          HTTP通信由request和response兩部分組成。從客戶發(fā)出的request信息傳到服務(wù)器,服務(wù)器接收request,返還response信息。

          HTTP通信主要有下述三種request方式。

          360截圖20120507114037144.jpg

          接下來,讓我們試著用多種request與服務(wù)器進(jìn)行通信。

          1.5.利用GET

          利用GET可以讀取服務(wù)器上的文件。在使用GET之前,如下所示需在已完成的HttpConnection方法的setRequestMethod方法中,指定HttpConnection的static變數(shù)GET。

          HttpConnectioncon=(HttpConnection)Connector.open(http://www.nec-mfriend.com/);

          con.setRequestMethod(HttpConnection.GET);

          ex.2

          如下所示可以利用DataInputStream獲取response。

          Stringres=;

          DataInputStreamin=con.openDataInputStream();

          intinput;

          while((input=in.read())!=-1){

          res=res+(char)input;

          }

          in.close();

          ex.3

          以下實際是與服務(wù)器通信,獲取html文件的sample。為簡單介紹sample的操作,得把通信結(jié)果,即獲取的html文件內(nèi)容,輸入控制臺。因此,此sample是以在模擬器上面操作為前提的。

          importjava.io.DataInputStream;

          importjava.io.IOException;


          上一頁 1 2 3 4 下一頁

          評論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();