江帆
摘 要:手機(jī)和移動(dòng)設(shè)備的開(kāi)發(fā)在現(xiàn)今正變得越來(lái)越重要,因此許多應(yīng)用系統(tǒng)都需要能夠把手機(jī)和移動(dòng)設(shè)備整合到現(xiàn)有的系統(tǒng)之中作為新的客戶(hù)端,在RAD Studio XE2中提供了Mobile Connector的功能,允許開(kāi)發(fā)人員開(kāi)發(fā)安卓系統(tǒng)的Datasnap客戶(hù)端程序,讓主流的手機(jī)使用者可以藉由手機(jī)連接到此服務(wù)器以存取服務(wù)器提供的服務(wù)。本文主要闡述了如何藉由Datasnap移動(dòng)設(shè)備連接組件的功能開(kāi)發(fā)安卓系統(tǒng)的服務(wù)器程序和手機(jī)的客戶(hù)端程序。
關(guān)鍵詞:Datasnap 安卓 服務(wù)器 客戶(hù)端
中圖分類(lèi)號(hào):TP311.5 文獻(xiàn)標(biāo)識(shí)碼:A 文章編號(hào):1672-3791(2013)03(b)-0022-01
1 Datasnap移動(dòng)設(shè)備連接組件說(shuō)明
RAD Studio XE2推出Datasnap移動(dòng)設(shè)備連接組件技術(shù)的目的是為了讓手機(jī)客戶(hù)端能夠非常容易地連接到Windows平臺(tái)的Datasnap服務(wù)器取得服務(wù),這樣一來(lái),就能夠讓原來(lái)Midas分散式系統(tǒng)或最新的Datasnap分散式系統(tǒng)和移動(dòng)式客戶(hù)端整合在一起。目前由于不同的手機(jī)客戶(hù)端必須使用不同的程式語(yǔ)言和技術(shù)來(lái)開(kāi)發(fā),因此開(kāi)發(fā)人員如果要整合數(shù)個(gè)不同的手機(jī)客戶(hù)端和分布式系統(tǒng),那將是非常辛苦的工作,而Datasnap移動(dòng)設(shè)備連接組件正好解決了這個(gè)問(wèn)題,因?yàn)檫@是一個(gè)藉由可以自動(dòng)產(chǎn)生不同手機(jī)客戶(hù)端的程序代碼的技術(shù),可以讓不同的手機(jī)客戶(hù)端連接到分布式系統(tǒng)。
2 開(kāi)發(fā)安卓系統(tǒng)應(yīng)用程序的步驟
在開(kāi)發(fā)安卓系統(tǒng)應(yīng)用程序的過(guò)程中,需要讓安卓系統(tǒng)的客戶(hù)端程序連接到Datasnap服務(wù)器程序,其開(kāi)發(fā)步驟如下:(1)從Datasnap服務(wù)器獲取Mobile Connector的Java客戶(hù)端程序代碼,這個(gè)程序代碼不僅能夠讓安卓系統(tǒng)的Java程序代碼連接到Datasnap服務(wù)器,更為重要的是,其中包含了所有服務(wù)器中的服務(wù)方法,可以讓安卓系統(tǒng)的Java客戶(hù)端程序直接連接服務(wù)器。(2)把Mobile Connector的Java客戶(hù)端程序代碼加入到安卓開(kāi)發(fā)軟件中,再使用Java調(diào)用Datasnap服務(wù)器的方法。
3 使用RAD Studio XE2開(kāi)發(fā)Datasnap服務(wù)器和安卓客戶(hù)端
3.1 建立服務(wù)器程序
要讓安卓手機(jī)用戶(hù)能夠連接到Datasnap服務(wù)器,在建立服務(wù)器時(shí)就必須加入支持Mobile Connector的功能,因此,我們先建立一個(gè)新的Datasnap Rest應(yīng)用程序,服務(wù)器建立完成后,打開(kāi)Web Module程序窗體,可以看到Datasnap Server的若干個(gè)組件,由于在之前勾選了Mobile Connectors選項(xiàng),因此在這個(gè)程序窗體中加入了DSProxyDispatcher組件,這個(gè)組件可以讓用戶(hù)藉由使用特定的URL來(lái)產(chǎn)生支持特定手機(jī)客戶(hù)端的Mobile Connector原始程序代碼。現(xiàn)在編譯并執(zhí)行服務(wù)器程序,就可以使用瀏覽器藉由特定的URL來(lái)獲取支持特定手機(jī)客戶(hù)端的Mobile Connector程序代碼,然后就可以使用這些支持特定手機(jī)客戶(hù)端的Mobile Connector程序代碼來(lái)連接并存取服務(wù)器中的服務(wù)方法。在瀏覽器中使用了上述特定的URL后,服務(wù)器就會(huì)傳遞安卓客戶(hù)端的Mobile Connector程序代碼(以ZIP壓縮文件的方式)到瀏覽器中,讓瀏覽器下載,文件名為java_android.zip。解壓縮此文件,就可以看到其中包含了Java原始程序的代碼文件,可以在Eclipse for Android中使用這些代碼文件以連接到服務(wù)器。
3.2 開(kāi)發(fā)安卓系統(tǒng)客戶(hù)端應(yīng)用程序
取得了安卓系統(tǒng)客戶(hù)端Mobile Connector的原始程序代碼以后,接下來(lái)就可以使用它來(lái)開(kāi)發(fā)安卓系統(tǒng)的客戶(hù)端應(yīng)用程序了,步驟如以下幾點(diǎn)。
(1)啟動(dòng)Eclipse for Android,并建立Android項(xiàng)目工程,單擊【下一步】按鈕。
(2)在下一步中選擇使用安卓2.1SDK,單擊【下一步】按鈕。
(3)在下一步單擊【Browse】按鈕,加入java_android.zip文件到工程項(xiàng)目文件中,并加入到工程的src目錄中,單擊【完成】按鈕。在加入完成后,打開(kāi)工程項(xiàng)目中src節(jié)點(diǎn),可以看到com.embarcadero.javaandroid出現(xiàn)在src節(jié)點(diǎn)下面。
(4)為以讓安卓客戶(hù)端程序能夠連接Datasnap服務(wù)器,必須開(kāi)啟Internet的存取權(quán)限。打開(kāi)工程項(xiàng)目文件中的Manifest.xml文件,加入Internet的存取使用權(quán)限。
修改客戶(hù)端程序的使用者界面,使用鼠標(biāo)雙擊選中res/layout節(jié)點(diǎn)之下的main.xml文件,此時(shí)Eclipse會(huì)顯示可視化的使用者界面,在主窗體中加入1個(gè)Label組件,2個(gè)EditText組件和1個(gè)Button組件。
使用鼠標(biāo)右擊第一個(gè)EditText組件,設(shè)定它的ID為edtZipCode,使用鼠標(biāo)右擊第二個(gè)EditText組件,設(shè)定它的ID為edtZipArea,使用鼠標(biāo)右擊Button組件,設(shè)定它的ID為btnQuery,設(shè)定它的Text為查詢(xún)。
最后為這個(gè)工程項(xiàng)目建立一個(gè)運(yùn)行時(shí)期的狀態(tài)設(shè)定,Eclipse for Android會(huì)啟動(dòng)Android Simulator并加載運(yùn)行的項(xiàng)目工程。在運(yùn)行的程序中輸入一個(gè)郵政編碼,并點(diǎn)擊【查詢(xún)】按鈕,會(huì)看到Android客戶(hù)端程序調(diào)用Datasnap服務(wù)器方法所返回的查詢(xún)結(jié)果。
4 結(jié)語(yǔ)
在計(jì)算機(jī)技術(shù)高速發(fā)展的今天,支持手機(jī)和移動(dòng)設(shè)備應(yīng)用程序的開(kāi)發(fā)正變得越來(lái)越重要,許多應(yīng)用系統(tǒng)都需要能夠把手機(jī)和移動(dòng)設(shè)備整合到現(xiàn)有的系統(tǒng)之中作為新的客戶(hù)端,在RAD Studio XE2中提供了Mobile Connector的功能,允許開(kāi)發(fā)人員開(kāi)發(fā)安卓系統(tǒng)的客戶(hù)端程序,讓主流的手機(jī)使用者可以藉由手機(jī)連接到Datasnap服務(wù)器以存取服務(wù)器提供的服務(wù)。本文主要闡述了如何藉由移動(dòng)設(shè)備連接組件的功能開(kāi)發(fā)安卓系統(tǒng)的服務(wù)器程序和手機(jī)的客戶(hù)端程序。
參考文獻(xiàn)
[1] 李玲玲,陶宏才.基于Android的業(yè)務(wù)盒的設(shè)計(jì)與實(shí)現(xiàn)[J].成都信息工程學(xué)院學(xué)報(bào),2012(4):41-45.
[2] 張棟,黃瑩瑩.基于Android平臺(tái)的云計(jì)算旅游信息導(dǎo)航系統(tǒng)設(shè)計(jì)[J].電子世界,2013(3):10-12.
[3] 董曉剛.淺析Android系統(tǒng)的四大基本組件[J].中國(guó)電子商務(wù),2013(1):39.
[4] 張?jiān)?Android Project目錄及文件詳解[J].信息安全與技術(shù),2013(1):40-42.