このレッスンでは、アプリケーションに同期機能を追加します。
HomeScreen クラスを更新して Sync メニュー項目を追加します。
[Package Explorer] ウィンドウの HomeScreen.java をダブルクリックしてから、getDataAccess メソッドを呼び出す try-catch 文の前に次のコードを挿入します。
// Add sync menu item addMenuItem(_syncMenuItem); |
HomeScreen クラスを更新して、クラス変数宣言にメニュー項目を定義する新しいメソッドを追加します。
次のコードを _addToListMenuItem メソッドの下に挿入します。
private MenuItem _syncMenuItem = new MenuItem("Sync", 2, 1) { public void run() { onSync(); } }; |
HomeScreen クラスを更新して、前の手順で呼び出された onSync メソッドを追加します。
次のコードを onAddToList メソッドの下に挿入します。
private void onSync() { try { if(_da.sync()) { _statusLabel.setText("Synchronization succeeded"); } else { _statusLabel.setText("Synchronization failed"); } refreshNameList(); } catch (Exception ex) { Dialog.alert(ex.toString()); } } |
DataAccess クラスを更新して _syncParms 変数を定義します。
[Package Explorer] ウィンドウの DataAccess.java をダブルクリックしてから、private static DataAccess _da; 呼び出しの下に次のコードを挿入します。
private static SyncParms _syncParms; |
DataAccess クラスを更新して sync メソッドを追加します。
次のコードを getNameVector メソッドの下に挿入します。
your-host-name を使用しているコンピューター名と置き換える必要があります。この用語はアプリケーションには使用できません。
public boolean sync() { try { if(_syncParms == null){ _syncParms = _conn.createSyncParms(SyncParms.HTTP_STREAM, "mluser", "HelloBlackBerrySyncModel"); _syncParms.setPassword("mlpassword"); _syncParms.getStreamParms().setHost("your-host-name"); // USE YOUR OWN _syncParms.getStreamParms().setPort(8081); // USE YOUR OWN } _conn.synchronize(_syncParms); return true; } catch(ULjException uex) { Dialog.alert("Exception: " + uex.toString()); return false; } } |
同期パラメーターオブジェクト SyncParms には、同期モデルの展開時に指定したユーザー名とパスワードが含まれています。また、作成した同期モデルの名前も含まれています。Mobile Link では、この名前は統合データベースに展開された同期バージョン (同期論理セット) を参照できます。
ストリームパラメーターオブジェクト StreamHTTPParms は、Mobile Link サーバーのホスト名とポート番号を示します。次のレッスンで Mobile Link サーバーを起動するときに、シミュレーターのテスト用に自分のコンピューター名を使用し、使用可能なポートを選択します。
デバイスを使用する場合は、外部で表示可能なコンピューターを使用するか、自分のデバイスとペアになっている BlackBerry Enterprise Server (Sybase をホストとする Relay Server など) からアクセスできるコンピューターを使用してください。 Relay Server の詳細については、Relay Server の概要を参照してください。
[ファイル] » [すべて保存] をクリックします。
![]() |
DocCommentXchange で意見交換できます
|
Copyright © 2012, iAnywhere Solutions, Inc. - SQL Anywhere 12.0.1 |