由於目前delphi xe2 還不直接支持Android 的開發,因此kbmMW 客戶端的功能也沒辦法直接在Android 上運行。
由於kbmMW 為了與java 應用程序通訊,在企業版里面提供了一個JavaClinet. 具體文件名為kbmMWClient.jar。
而在basci4android 可以直接使用這個jar. 也就是說通過kbmMW 的javaclient 可以直接訪問kbmMW 的服務器。
當然由於客戶端沒有kbmMemTable的功能,一次只能是訪問遠程服務過程,無法直接實現數據庫的存取。
在Basci4android 里面訪問kbmMW 很簡單,只要引用kbmMWClient 庫就可以了。其他就非常類似delphi 客戶端了。
服務器就用我們以前的,主要是basci4android 客戶端的代碼。
'Activity module Sub Process_Globals 'These global variables will be declared once when the application starts. 'These variables can be accessed from all modules. End Sub Sub Globals 'These global variables will be redeclared each time the activity is created. 'These variables can only be accessed from this module. Dim SimpleClient As TkbmMWClient Dim Ip As EditText Dim Port As EditText Dim mLog As EditText End Sub Sub Activity_Create(FirstTime As Boolean) Activity.LoadLayout("Main") Ip.Text = "127.0.0.1" Port.Text = "3000" End Sub Sub Activity_Resume End Sub Sub Activity_Pause (UserClosed As Boolean) End Sub Sub ConnectBtn_Click SimpleClient.Connect(Ip.Text,Port.Text) End Sub Sub SendBtn_Click Dim args(2) As String args(0)=100 mLog.Text="結果為"& SimpleClient.SendRequest ("xalion_srv","","SUMALL",args) End Sub
編譯運行,就可以成功調用服務端過程了。
怎么樣,還算方便吧。
目前對於遠程數據的訪問,可以通過返回JSON 傳,然后解析再顯示到客戶端。
更方便的操作,估計只能等到delphi 支持Android 了。