Zum Verweis auf UltraLite-Headerdateien und die Bibliothek ist die Erstellung einer benutzerdefinierten Build-Einstellung
für die Kompilierung der Anwendung zu empfehlen, die auf den Standort des SQL Anywhere-Installationsverzeichnisses verweist.
Setzen Sie beispielsweise SQLANY_ROOT auf /Anwendungen/SQLAnywhere16. Um diese Einstellung zu erstellen, öffnen Sie den Build-Bereich des Projekteditors und klicken Sie auf Add User-Defined Setting. Geben Sie den Namen und den Wert ein.
Um die UltraLite Include-Dateien zu suchen, fügen Sie $(SQLANY_ROOT)/sdk/include zur Build-Einstellung User Header Search Paths(USER_HEADER_SEARCH_PATHS) hinzu.
Um die Ende-zu-Ende-Verschlüsselung bei der Synchronisation von Mac OS X- und iPhone-UltraLite-Clients mit einem MobiLink-Server
zu verwenden, müssen Sie Ihre öffentlichen Schlüssel in einem PEM-kodierten X509-Zertifikat verpacken (im Gegensatz zu einer
öffentlichen PEM-Schlüsseldatei) und einen privaten E2EE-Schlüssel angeben. Um ein PEM-kodiertes X509-Zertifikat mit einem
privaten E2EE-Schlüssel zu erstellen, wird empfohlen, dass Sie das Dienstprogramm zur Zertifikatserstellung "createcert" verwenden.
Nachdem Sie einen privaten E2EE-Schlüssel erhalten haben, geben Sie die Option -x an, wenn Sie den MobiLink-Server starten,
und ordnen Sie den Schlüssel der e2ee_private_key-Option zu. Um die UltraLite-Clientdatenbank mit dem MobiLink-Server zu synchronisieren,
führen Sie das UltraLite-Synchronisationsdienstprogramm ulsync aus und ordnen Sie den öffentlichen E2EE-Schlüssel der e2ee_public_key-Verbindungsoption
zu. Das Extrahieren des öffentlichen Schlüssels aus dem Zertifikat ist erforderlich, wenn iPhone- und Nicht-iPhone-Clients
gemeinsam verwendet werden. Beim Entwickeln von iPhone-UltraLite-Clients sucht das UltraLite-Synchronisationsdienstprogramm
nach der Zertifikatdatei im Haupt-Ressourcen-Bundle (mainBundle) des iPhone-Entwicklungspakets, wenn die trusted_certificates-
oder die e2ee_public_key-Option zugeordnet ist. Sie müssen das Zertifikat im Ressources-Ordner in Ihrem Xcode-Projekt einschließen.
Folgende Verschlüsselungsstandards werden nicht unterstützt:
Der Xcode-Debugger (GDB) hat Unterstützung für das schrittweise Durchgehen des Codes und Abbrechen bei longjmp()-Aufrufen. Anwendungen verwenden in der Regel longjmp nicht, aber die UltraLite-Laufzeitbibliothek verwendet es intern (manchmal, beispielsweise wenn ein Fehler signalisiert wird).
Dies kann Probleme verursachen, wenn man den Anwendungscode durchgeht und UltraLite-Aufrufe überschreitet. Wenn Sie einen
UltraLite-Aufruf überschreiten und eine Fehlermeldung aus dem Debugger erhalten: Starten Sie das Programm erneut, setzen Sie
einen Breakpoint nach der problematischen Zeile und verwenden Sie anstelle des Überschreitens der problematische Zeile den
Continue-Befehl. Dies hat dieselbe Wirkung, weil der Debugger am folgenden Breakpoint stoppt, vermeidet aber gleichzeitig Probleme
im Zusammenhang mit longjmp-Aufrufen. Dies kommt wahrscheinlich vor, wenn Sie OpenConnection verwenden, um eine bestehende Datenbank zu öffnen oder zu
ermitteln, ob die Datenbank nicht besteht (ein Fehler wird signalisiert, wenn die Datenbank nicht existiert).