Oracle Mobile Hub -SDK mit Ihrer App konfigurieren

Sie müssen das Oracle Mobile Hub-SDK mit Ihrer Mobile-Anwendung konfigurieren, bevor Sie Code schreiben.

SDK hinzufügen

In einem Basis-App-Setup, ohne Frameworks einzutragen, fügen Sie das iOS-Client-SDK zu einer App hinzu.

  1. Dekomprimieren Sie die Downloaddatei omce-ios-sdk-{n}.zip (wobei {n} die Versionsnummer des SDK ist) in ein Verzeichnis auf Ihrem Rechner.

  2. Aus den extrahierten Inhalten der ZIP-Datei ziehen Sie das Verzeichnis oracle_mobile_ios_sdk per Drag and Drop in den Xcode-Projektnavigator.

    • Wählen Sie bei Bedarf Elemente kopieren aus.

    • Wählen Sie Gruppen erstellen aus.

    • Klicken Sie auf Fertig stellen.

    Sobald die Datei .a für eine bestimmte Library in den Entwicklungsbaum Ihrer Anwendung in Xcode kopiert wurde, ist die entsprechende Plattform-API über SDK-Aufrufe für Ihre Anwendung verfügbar. An dieser Stelle sind alle statischen SDK-Librarys für Ihre App verfügbar.

  3. Wählen Sie das Ziel für das Projekt, wählen Sie die Registerkarte Build-Phasen , blenden Sie Link-Binärdatei mit Librarys ein, klicken Sie auf die Schaltfläche + , und fügen Sie die folgenden Librarys hinzu:

    • CoreData.framework

    • CoreLocation.framework

    • libsqlite3.0.tbd

    • Security.framework

    • SystemConfiguration.framework

  4. Doppelklicken Sie im Abschnitt Build-Einstellungen für das Projekt auf Weitere Linker-Flags (unter Verknüpfung ), und fügen Sie-ObjC hinzu.

  5. Blenden Sie unter Build-Einstellungen die Option Suchpfade ein, und gehen Sie folgendermaßen vor:

    1. Fügen Sie oracle_mobile_ios_sdk/release-iphoneos zu Library-Suchpfaden hinzu.

    2. Fügen Sie oracle_mobile_ios_sdk/release-iphoneos/include den Benutzerpfaden für die Headersuche hinzu.

  6. Blenden Sie den Ordner Documentation der dekomprimierten ZIP-Datei ein, kopieren Sie die Datei OMC.plist, und speichern Sie sie in das Root des Hauptanwendungs-Bundles Ihrer App.

  7. Bearbeiten Sie die zuletzt kopierte Datei OMC.plist.

  8. Ab Xcode 7 müssen Sie die Policy Application Transport Security (ATS) berücksichtigen, die die Remote-Kommunikation durch HTTPS erzwingt.

    Fügen Sie den folgenden Schlüssel nur zu Entwicklungszwecken in der Datei Info.plist der App hinzu, um die ATS Policy für die App auszuschalten.

    <key>NSAppTransportSecurity</key> 
    <dict>
     <key>NSAllowsArbitraryLoads</key>
     <true/> 
    </dict>

    Hinweis:

    Diese Einstellung darf nicht in der Produktion verwendet werden. Um eine optimale Sicherheit für Ihre App zu gewährleisten, prüfen Sie die Apple-Dokumentation, und befolgen Sie die Empfehlungen von Apple zum Deaktivieren von ATS für bestimmte Domains und zum Anwenden korrekter Sicherheitssenkungen für diese Domains.

SDK-Eigenschaften konfigurieren

Um das Client-SDK in einer iOS-App zu verwenden, müssen Sie die Konfigurationsdatei OMC.plist zur App hinzufügen und sie mit Umgebungsdetails für Ihr Backend in Oracle Mobile Hub sowie anderen Konfigurationsinformationen ausfüllen. Die SDK-Klassen verwenden diese Informationen wiederum zur Verwaltung von Autorisierung, Logging, Ereignisverfolgung, Datensynchronisierung und anderen Features.

Sie verpacken die Konfigurationsdatei im Stammverzeichnis des Haupt-Bundles der App.

Die Datei ist im Wesentlichen in die folgenden Teile unterteilt:

  • Der Schlüssel mobileBackend und sein Inhalt.

    Sie nehmen diesen Teil auf, wenn Sie ein Backend mit der App verwenden. Die SDK-Klassen verwenden die Umgebungs- und Authentifizierungsdetails, die Sie angeben, um auf das Backend zuzugreifen und HTTP-Header für REST-Aufrufe zu erstellen, die an APIs vorgenommen wurden.

  • Schlüssel, die für die Konfiguration als Ganzes gelten, wie logLevel und oAuthTokenEndpoint. Diese Schlüssel werden in der Regel nicht am Anfang der Datei angezeigt.

Im Folgenden finden Sie die gleiche Datei im Textformat:

<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd"
<plist version="1.0">
<dict>
  <key>logLevel</key>
  <string>debug</string>
  <key>logHTTP</key>
  <true/>
  <key>oAuthTokenEndPoint</key>
  <string>https://MY_TOKEN_ENDPOINT</string>
  <key>mobileBackend</key>
  <dict>
    <key>name</key>
    <string>EasyShoppingMBE</string>
    <key>baseURL</key>
    <string>https://MY_CLOUD_DOMAIN.oracle.com</string>
    <key>authentication</key>
    <dict>
      <key>type</key>
      <string>oauth</string>
      <key>oauth</key>
      <dict>
        <key>clientID</key>
        <string>11dac238ffaa4b029e78e982114642ab</string>
        <key>clientSecret</key>
        <string>5624cbdd-a7c5-4c10-a758-6019a5ab8da8</string>
        <key>enableOffline</key>
        <true/>
      </dict>
    </dict>
  </dict>
</dict>
</plist>

Hier finden Sie eine Beschreibung einiger der wichtigen Einträge in der Datei OMC.plist.

  • oAuthTokenEndPoint - Die URL des OAuth-Servers, von dem die Anwendung das Authentifizierungstoken abruft. Dieser Schlüssel muss für alle Apps angegeben werden, die sich auf OAuth zur Authentifizierung beruhen. Diese Informationen erhalten Sie auf der Seite "Einstellungen" des Backends. Der Endpunkt darf nur die Basis-URL sein (in Form von https://host.domain:port).

  • logLevel - Bestimmt, wie viel SDK-Logging in der App-Konsole angezeigt wird. Der Standardwert ist error. Weitere mögliche Werte (bei einer zunehmenden Detailebene) sind warning, info und debug. Der Wert kann auch auf none gesetzt werden.

  • logHTTP - Wenn dieser Wert auf true gesetzt ist, protokolliert das SDK die Header und Bodys aller HTTP-Anforderungen und -Antworten.

  • mobileBackend - Ein Dictionary-Eintrag mit Authentifizierungsdetails für Ihr Backend und andere optionale Details, wie Synchronisierungseigenschaften.

    Die Authentifizierungsdetails, wie die OAuth - und HTTP-Zugangsdaten, werden auf der Seite "Einstellungen " des Backends abgerufen.

  • mobileBackend/baseUrl: Die Basis-URL für alle APIs, die Sie über das Backend aufrufen. Diese Informationen erhalten Sie auf der Seite "Einstellungen" des Backends.

  • mobileBackend/authentication - Enthält ein Dictionary mit den folgenden Elementen:

    • Der Unterschlüssel type mit möglichen Werten (string) von oauth, basic, facebook und tokenExchange.

    • Ein oder mehrere Unterschlüssel für Authentifizierungstypen, die ein Dictionary mit den Authentifizierungszugangsdaten enthalten.

      Innerhalb von Unterschlüsseln für basic und oauth können Sie auch den Schlüssel enableOffline hinzufügen. Standardmäßig ist diese Eigenschaft auf true gesetzt.