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.
-
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. -
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. -
-
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
-
-
Nella sezione Impostazioni di generazione del progetto, fare doppio clic su Altri flag linker (In Collegamento ), quindi aggiungere
-ObjC
. -
Inoltre, in Impostazioni di generazione espandere Percorsi di ricerca e:
-
Aggiungere
oracle_mobile_ios_sdk/release-iphoneos
ai percorsi di ricerca della libreria. -
Aggiungere
oracle_mobile_ios_sdk/release-iphoneos/include
ai percorsi di ricerca dell'intestazione utente.
-
-
Espandere la cartella
Documentation
del file zip estratto, copiare il fileOMC.plist
e inserirlo nella radice del bundle applicazioni principale dell'applicazione. -
Modificare il file
OMC.plist
appena copiato. -
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
eoAuthTokenEndpoint
. 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 formatohttps://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) sonowarning
,info
edebug
. È inoltre possibile impostare il valore sunone
. -
logHTTP
: quando è impostata sutrue
, 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
) dioauth
,basic
,facebook
etokenExchange
. -
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
eoauth
è inoltre possibile aggiungere la chiaveenableOffline
. Per impostazione predefinita, questa proprietà è impostata sutrue
.
-