Click here to view and discuss this page in DocCommentXchange. In the future, you will be sent there automatically.

SQL Anywhere 11.0.1 (Deutsch) » UltraLiteJ » UltraLiteJ verwenden » Praktische Einführung: Eine BlackBerry-Anwendung erstellen » Teil 2: Der BlackBerry-Anwendung Synchronisation hinzufügen

 

Lektion 3: Der Anwendung Synchronisation hinzufügen

In dieser Lektion fügen Sie Ihrer Anwendung Synchronisationfunktionalität hinzu.

  1. Im HomeScreen-Konstruktor fügen Sie eine Menüoption "Synchronisation" hinzu.

    // Add a menu item
    addMenuItem(_addToListMenuItem);
            
    // Add sync menu item
    addMenuItem(_syncMenuItem);        
                   
    // Create database and connect
    try{ ...
  2. Definieren Sie die Menüoption in den Klassen-Variablendeklarationen.

    private MenuItem _addToListMenuItem = new MenuItem("Add", 1, 1){
            public void run() {
                onAddToList();
            }
    };
    private MenuItem _syncMenuItem = new MenuItem("Sync", 2, 1){
            public void run() {
                onSync();
            }
    };
  3. Erstellen Sie die onSync-Methode.

    private void onSync(){
        try{
            if( _da.sync() ){
                _statusLabel.setText("Synchronization succeeded");
            } else {
                _statusLabel.setText("Synchronization failed");
              }
            this.refreshNameList();
        } catch ( Exception ex){
            System.out.println( ex.toString() );
        }
    }
  4. Legen Sie die syncParms- und streamParms-Variablen auf der Klassenebene fest.

    private static SyncParms _syncParms;
    private static StreamHTTPParms _streamParms;
  5. In der DataAccess-Klasse fügen Sie eine Synchronisationsmethode hinzu.

    public boolean sync() {
        try {
            if( _syncParms == null ){
                String host = "ultralitej.sybase.com";
                _syncParms = _conn.createSyncParms( "mluser", "HelloBlackBerrySyncModel" );
                _syncParms.setPassword("mlpassword");
                _streamParms = _syncParms.getStreamParms();
                _streamParms.setPort( 80 ); // use your own
                _streamParms.setHost( host ); // use your own
                if(host.equals("ultralitej.sybase.com"))
                {
                    _streamParms.setURLSuffix("scripts/iaredirect.dll/ml/HelloBlackBerry/");
                }
            }
            System.out.println( "Synchronizing" );
            _conn.synchronize( _syncParms ); 
            return true;
        }
        catch( ULjException uex){
            System.out.println(uex.toString());
            return false;
        }
    }

    Das Synchronisationparameter-Objekt SyncParms enthält den Benutzernamen und das Kennwort, die Sie beim Deployment des Synchronisationsmodells angegeben haben. Es enthält auch den Namen des von Ihnen erstellten Synchronisationsmodells. In MobiLink bezieht sich dieser Name auf die Synchronisationsversion oder auf einen Satz von Synchronisationslogik, dessen Deployment auf Ihre konsolidierte Datenbank vorgenommen wurde.

    Das Datenstromparameter-Objekt StreamHTTPParms gibt den Hostnamen und die Portnummer des MobiLink-Servers an. Wenn Sie den MobiLink-Server in der nächsten Lektion starten, verwenden Sie Ihren eigenen Computernamen und wählen einen verfügbaren Port aus. Verwenden Sie nicht "localhost" als Ihren Computernamen. Sie können Port 80 verwenden, wenn auf Ihrem Computer kein Webserver läuft.

  6. Kompilieren Sie Ihre Anwendung.