Configurare il kit SDK Oracle Mobile Hub con l'applicazione Mobile in uso

Prima di scrivere un codice, è necessario configurare il kit SDK Oracle Mobile Hub con l'applicazione Mobile.

Aggiungere l'SDK

In un'installazione di base dell'applicazione, senza strutture intermedie, il kit SDK client iOS verrà aggiunto a un'applicazione.

  1. Estrarre il file di download, omce-ios-sdk-{n}.zip (dove {n} è il numero di versione dell'SDK) in una directory del computer in uso.

  2. Dal contenuto estratto del file zip, trascinare la directory oracle_mobile_ios_sdk nel navigator progetti Xcode.

    • Selezionare Copia elementi se necessario.

    • Selezionare Crea gruppi.

    • Fare clic su Fine.

    Dopo aver copiato il file .a per una libreria specifica nella struttura di sviluppo dell'applicazione in Xcode, l'API di piattaforma corrispondente è disponibile nell'applicazione tramite le chiamate SDK. A questo punto, tutte le librerie statiche del kit SDK sono disponibili per l'applicazione.

  3. Selezionare la destinazione del progetto, selezionare la scheda Fasi di creazione, espandere Collega file binari con librerie, fare clic sul pulsante + e aggiungere le seguenti librerie:

    • CoreData.framework

    • CoreLocation.framework

    • libsqlite3.0.tbd

    • Security.framework

    • SystemConfiguration.framework

  4. Nella sezione Impostazioni di generazione del progetto, fare doppio clic su Altri flag linker (In Collegamento ), quindi aggiungere -ObjC.

  5. Inoltre, in Impostazioni di generazione espandere Percorsi di ricerca e:

    1. Aggiungere oracle_mobile_ios_sdk/release-iphoneos ai percorsi di ricerca della libreria.

    2. Aggiungere oracle_mobile_ios_sdk/release-iphoneos/include ai percorsi di ricerca dell'intestazione utente.

  6. Espandere la cartella Documentation del file zip estratto, copiare il file OMC.plist e inserirlo nella radice del bundle applicazioni principale dell'applicazione.

  7. Modificare il file OMC.plist appena copiato.

  8. A partire da Xcode 7, è necessario prendere in considerazione il criterio ATS (Application Transport Security) che applica le comunicazioni remote in modo che diventino HTTPS.

    Solo per lo sviluppo, aggiungere la seguente chiave nel file Info.plist dell'applicazione per disattivare il criterio ATS per l'applicazione.

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

    Nota

    Non utilizzare questa impostazione nella produzione. Per garantire una maggiore sicurezza per l'applicazione, esaminare la documentazione di Apple e seguire i suggerimenti di Apple per disabilitare ATS per domini specifici e applicare correzioni di sicurezza appropriate per tali domini.

Configura proprietà SDK

Per usare il kit SDK client in un'applicazione iOS, è necessario aggiungere il file di configurazione OMC.plist all'applicazione e compilarlo con i dettagli dell'ambiente per il proprio backend in Oracle Mobile Hub e altre informazioni di configurazione. Le classi SDK utilizzano queste informazioni per gestire le autorizzazioni, il log, il tracciamento degli eventi, la sincronizzazione dei dati e altre funzioni.

Il file di configurazione viene inserito nel package all'interno della radice del bundle principale dell'applicazione.

Il file è costituito essenzialmente dalle parti riportate di seguito.

  • La chiave mobileBackend e il relativo contenuto.

    Includere questa parte se si utilizza un backend con l'applicazione. Le classi SDK utilizzano i dettagli dell'ambiente e di autenticazione specificati per accedere al backend e creare le intestazioni HTTP per le chiamate REST effettuate alle API.

  • Chiavi valide per l'intera configurazione, ad esempio logLevel e oAuthTokenEndpoint. In genere, queste chiavi non devono essere visualizzate nella parte superiore del file.

Ecco lo stesso file in formato testo:

<?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>

Si tratta inoltre di una descrizione di alcune voci più importanti nel file OMC.plist.

  • oAuthTokenEndPoint: l'URL del server OAuth dal quale l'applicazione ottiene il token di autenticazione. È necessario fornire questa chiave per tutte le applicazioni che si basano su OAuth per l'autenticazione. Si ottiene dalla pagina Impostazioni del backend. L'endpoint deve essere solo l'URL di base (nel formato https://host.domain:port).

  • logLevel: determina la quantità di log SDK visualizzato nella console dell'applicazione. Il valore predefinito è error. Altri valori possibili (in aumento del livello di dettaglio) sono warning, info e debug. È inoltre possibile impostare il valore su none.

  • logHTTP: quando è impostata su true, SDK registra le intestazioni e i corpi di tutte le richieste e le risposte HTTP.

  • mobileBackend: una voce di dizionario che contiene i dettagli di autenticazione per il backend e altri dettagli facoltativi, quali le proprietà di sincronizzazione.

    I dettagli di autenticazione, quali le credenziali OAuth e HTTP, vengono ottenuti dalla pagina Impostazioni del backend.

  • mobileBackend/baseUrl: l'URL di base per tutte le API richiamate tramite il backend. Si ottiene dalla pagina Impostazioni del backend.

  • mobileBackend/authentication: contiene un dizionario con i seguenti elementi:

    • La chiave secondaria type con i valori possibili (string) di oauth, basic, facebook e tokenExchange.

    • Una o più chiavi secondarie per i tipi di autenticazione che contengono un dizionario con le credenziali di autenticazione.

      All'interno dei tasti secondari per basic e oauth è inoltre possibile aggiungere la chiave enableOffline. Per impostazione predefinita, questa proprietà è impostata su true.