Configurar el SDK de Oracle Mobile Hub con la aplicación móvil
Debe configurar Oracle Mobile Hub SDK con la aplicación móvil antes de escribir cualquier código.
Agregar SDK
En una configuración de aplicación básica, sin marcos de sesión, agregará el SDK de cliente iOS a una aplicación.
-
Descomprima el archivo de descarga,
omce-ios-sdk-{n}.zip
(donde {n} es el número de versión del SDK) en algún directorio de la máquina. -
Desde el contenido extraído del zip, arrastre y suelte el directorio
oracle_mobile_ios_sdk
en el navegador de proyectos Xcode.-
Seleccione Copiar elementos si es necesario .
-
Seleccione Crear Grupos .
-
Haga clic en Terminar.
Una vez que el archivo
.a
de una biblioteca específica se ha copiado en el árbol de desarrollo de la aplicación en Xcode, la API de plataforma correspondiente está disponible para su aplicación mediante llamadas SDK. En este punto, todas las bibliotecas estáticas de SDK están disponibles para su aplicación. -
-
Seleccione el destino para el proyecto, seleccione el separador Fases de Creación , amplíe Enlazar Binario con Bibliotecas , haga clic en el botón + y agregue las siguientes bibliotecas:
-
CoreData.framework
-
CoreLocation.framework
-
libsqlite3.0.tbd
-
Security.framework
-
SystemConfiguration.framework
-
-
En la sección Configuración de Creación del proyecto, haga doble clic en Otros Indicadores de Enlace (en Enlace ) y agregue
-ObjC
. -
Además, en Configuración de creación, expanda Rutas de búsqueda y:
-
Agregue
oracle_mobile_ios_sdk/release-iphoneos
a las rutas de búsqueda de la biblioteca. -
Agregue
oracle_mobile_ios_sdk/release-iphoneos/include
a las rutas de búsqueda de cabeceras de usuario.
-
-
Amplíe la carpeta
Documentation
del zip desempaquetado, copie el archivoOMC.plist
y colóquelo en la raíz del paquete de aplicaciones principal de la aplicación. -
Edite el archivo
OMC.plist
just-copied. -
A partir de Xcode 7, debe justificar la política Application Transport Security (ATS), que fuerza las comunicaciones remotas a ser sobre HTTPS.
Solo para fines de desarrollo, agregue la siguiente clave en el archivo
Info.plist
de la aplicación para desactivar la política de ATS para la aplicación.<key>NSAppTransportSecurity</key> <dict> <key>NSAllowsArbitraryLoads</key> <true/> </dict>
Nota:
No debe utilizar este valor en producción. Para asegurarse de que proporciona una seguridad óptima para su aplicación, consulte la documentación de Apple y siga las recomendaciones de Apple para desactivar ATS para dominios específicos y aplicar las reducciones de seguridad adecuadas para esos dominios.
Configurar Propiedades de SDK
Para utilizar el SDK de cliente en una aplicación iOS, debe agregar el archivo de configuración OMC.plist
a la aplicación y rellenarlo con los detalles del entorno para su backend en Oracle Mobile Hub, así como con otra información de configuración. A su vez, las clases SDK utilizan esta información para ayudar a gestionar la autorización, el registro, el seguimiento de eventos, la sincronización de datos y otras funciones.
Empaqueta el archivo de configuración en la raíz del grupo principal de la aplicación.
El archivo se divide básicamente en las siguientes partes:
-
La clave
mobileBackend
y su contenido.Se incluye esta pieza si está utilizando un backend con la aplicación. Las clases de SDK utilizan los detalles de entorno y autenticación que especifica que debe acceder al backend y crear cabeceras HTTP para las llamadas de REST realizadas a las API.
-
Claves que se aplican a la configuración en conjunto, como
logLevel
yoAuthTokenEndpoint
. Estas claves, por lo general, no tienen que, aparecen en la parte superior del archivo.
A continuación se muestra el mismo archivo en formato de texto:
<?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>
Y ésta es una descripción de algunas de las entradas más importantes del archivo OMC.plist
.
-
oAuthTokenEndPoint
: URL del servidor de OAuth desde el que la aplicación obtiene su token de autenticación. Esta clave se debe proporcionar para todas las aplicaciones que se basan en OAuth para la autenticación. Este valor se obtiene de la página de valores del backend. El punto final debe ser solo la URL base (con el formatohttps://host.domain:port
). -
logLevel
: determina la cantidad de registro de SDK que se muestra en la consola de la aplicación. El valor por defecto eserror
. Otros valores posibles (en el nivel de aumento de detalle) sonwarning
,info
ydebug
. También se puede definir el valor ennone
. -
logHTTP
: cuando se define entrue
, el SDK registra las cabeceras y los cuerpos de todas las solicitudes y respuestas HTTP. -
mobileBackend
: entrada de diccionario que contiene los detalles de autenticación del backend y otros detalles opcionales, como las propiedades de sincronización.Se obtienen los detalles de autenticación, como las credenciales de OAuth y HTTP, de la página Configuración del backend.
-
mobileBackend/baseUrl
: URL base para todas las API a las que llama mediante el backend. Este valor se obtiene de la página de valores del backend. -
mobileBackend/authentication
: contiene un diccionario con los siguientes elementos:-
Subclave
type
, con valores posibles (string
) deoauth
,basic
,facebook
ytokenExchange
. -
Una o más subclaves para los tipos de autenticación, que contienen un diccionario con las credenciales de autenticación.
Dentro de las subclaves de
basic
yoauth
, también puede agregar la claveenableOffline
. Por defecto, esta propiedad se define entrue
.
-