Adición de MobileFirst Foundation SDK a aplicaciones Android
improve this page | report issueVisión general
El producto IBM Mobile Foundation SDK está formado por un conjunto de dependencias que están disponibles a través de Maven Central y que puede añadir a su proyecto de Android Studio. Las dependencias corresponden a funciones principales y a otras funciones:
- IBMMobileFirstPlatformFoundation - Implementa la conectividad de cliente a servidor, maneja la autenticación y los aspectos de seguridad, solicitudes de recursos y otras funciones básicas necesarias.
- IBMMobileFirstPlatformFoundationJSONStore - Contiene la infraestructura de JSONStore. Para obtener más información, revise la guía de aprendizaje JSONStore para Android.
- IBMMobileFirstPlatformFoundationPush - Contiene la infraestructura de notificaciones push. Para obtener más información, revise las guías de aprendizajes de notificaciones.
En esta guía de aprendizaje, aprenderá a añadir MobileFirst Native SDK mediante Gradle para una aplicación Android nueva o existente. También aprenderá a configurar MobileFirst Server para que reconozca la aplicación, y para encontrar información sobre los archivos de configuración MobileFirst que se añaden al proyecto.
Requisitos previos:
- Android Studio y MobileFirst CLI instalado en la estación de trabajo del desarrollador.
- Una instancia remota o local de MobileFirst Server que esté en ejecución.
- Consulte las guías de aprendizaje de Configuración del entorno de desarrollo de MobileFirst y Configuración del entorno de desarrollo Android.
Ir a:
- Adición de MobileFirst Native SDK
- Adición manual de MobileFirst Native SDK
- Actualización de MobileFirst Native SDK
- Artefactos de MobileFirst Native SDK generados
- Soporte para Javadoc y el servicio Android
- Guías de aprendizaje con las que continuar
Adición de MobileFirst Native SDK
Siga las instrucciones que hay más abajo para añadir MobileFirst Native SDK a un proyecto de Android Studio nuevo o existente y para registrar la aplicación para la instancia de MobileFirst Server.
Antes de empezar, asegúrese de que MobileFirst Server se encuentra en ejecución.
Si utiliza un servidor instalado de forma local: desde la ventana de línea de mandatos, vaya hasta la carpeta del servidor y ejecute el mandato ./run.sh
en los sistemas operativos Mac o Linux o run.cmd
en Windows.
Creación de una aplicación Android
Cree un proyecto de Android Studio o utilice uno existente.
Adición del SDK
-
En Android → Scripts de Gradle, seleccione el archivo build.gradle (Módulo: app).
-
Añada las siguientes líneas después de
apply plugin: 'com.android.application'
:repositories{ jcenter() }
-
Añada lo siguiente dentro de la sección
android
:packagingOptions { pickFirst 'META-INF/ASL2.0' pickFirst 'META-INF/LICENSE' pickFirst 'META-INF/NOTICE' }
-
Añada las siguientes líneas dentro de la sección
dependencies
:implementation group: 'com.ibm.mobile.foundation', name: 'ibmmobilefirstplatformfoundation', version: '8.0.+', ext: 'aar', transitive: true
O en una única línea:
implementation 'com.ibm.mobile.foundation:ibmmobilefirstplatformfoundation:8.0.+'
Nota: si utiliza la característica Google Dynamic Delivery y desea llamar a las API de MobileFirst en un módulo de la característica, utilice la declaración
api
en lugar deimplementation
. Si utilizaimplementation
, se restringen las API de MobileFirst al mismo módulo, mientras que, si se utilizaapi
, las API de MobileFirst está disponibles en todos los módulos presentes en la app, incluidos los módulos de la característica. Para obtener más información, consulte Separación de API e implementation.
api 'com.ibm.mobile.foundation:ibmmobilefirstplatformfoundation:8.0.+'
-
En Android → app → manifiestos, abra el archivo
AndroidManifest.xml
. Añada los siguientes permisos por encima del elemento application:<uses-permission android:name="android.permission.INTERNET"/> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE"/>
-
Añada la actividad de interfaz de usuario de MobileFirst junto al elemento activity existente:
<activity android:name="com.worklight.wlclient.ui.UIActivity" />
Si aparece una solicitud de Gradle Sync, acéptela.
Adición manual de MobileFirst Native SDK
También es posible añadir el SDK de MobileFirst:
Para añadir de forma manual el SDK de MobileFirst, descargue primero el archivo .zip SDK desde el separador MobileFirst Operations Console → Centro de descargas → SDK. Después de completar los pasos anteriores, siga también más abajo.
- Extraiga el archivo .zip descargado y coloque los archivos relevantes en la carpeta app\libs.
- Añada lo siguiente al cierre de dependencies:
compile(name:'ibmmobilefirstplatformfoundation', ext:'aar') compile 'com.squareup.okhttp3:okhttp-urlconnection:3.4.1' compile 'com.squareup.okhttp3:okhttp:3.4.1'
- Añada lo siguiente al cierre de repositories:
repositories { flatDir { dirs 'libs' } }
Sección de cierre
Registro de la aplicación
-
Abra una ventana de línea de mandatos y vaya a la raíz del proyecto Android Studio.
-
Ejecute el mandato:
mfpdev app register
- Si se utiliza un servidor remoto, utilice el mandato
mfpdev server add
para añadirlo.
- Si se utiliza un servidor remoto, utilice el mandato
El mandato de interfaz de línea de mandatos mfpdev app register
se conecta primero a MobileFirst Server para registrar la aplicación y después genera el archivo mfpclient.properties en la carpeta [raíz proyecto]/app/src/main/assets/ del proyecto Android Studio y para añadirlo en los metadatos que identifican a MobileFirst Server.
Sugerencia: También es posible registrar aplicaciones desde MobileFirst Operations Console:
- Cargue MobileFirst Operations Console.
- Pulse el botón Nuevo junto a Aplicaciones para registrar una nueva aplicación y seguir las instrucciones en la pantalla.
- Después de que se registre la aplicación, vaya al separador Archivos de configuración y copie o descargue el archivo mfpclient.properties. Siga las instrucciones en la pantalla para añadir el archivo al proyecto.
Creación de una instancia de WLClient
Antes de utilizar las API de MobileFirst, cree una instancia de WLClient
:
WLClient.createInstance(this);
Nota: La creación de una instancia de WLClient
solo debería ocurrir una vez en todo el ciclo de vida de la aplicación. Es recomendable para ello utilizar la clase Application de Android.
Actualización de MobileFirst Native SDK
Para actualizar MobileFirst Native SDK con el último release, encuentre el número de versión de release y actualice la propiedad version
según corresponda en el archivo build.gradle.
Consulte el paso 4 anterior.
Los releases de SDK se pueden encontrar en el repositorio JCenter de SDK.
Artefactos de MobileFirst Native SDK generados
mfpclient.properties
Ubicado en la carpeta ./app/src/main/assets/ del proyecto Android Studio, este archivo define las propiedades utilizadas del lado del cliente para registrar su aplicación Android en MobileFirst Server.
Propiedad | Descripción | Valores de ejemplo |
---|---|---|
wlServerProtocol | Protocolo de comunicación con MobileFirst Server. | http o https |
wlServerHost | Nombre de host de MobileFirst Server. | 192.168.1.63 |
wlServerPort | Puerto de MobileFirst Server. | 9080 |
wlServerContext | Vía de acceso de raíz de contexto de la aplicación en MobileFirst Server. | /mfp/ |
languagePreferences | Establece el idioma predeterminado para los mensajes de sistema del SDK de cliente. | en |
Soporte para Javadoc y el servicio Android
Para obtener información sobre el soporte para Javadoc y el servicio Android, consulte la página Información adicional.
Guías de aprendizaje con las que continuar
Con MobileFirst Native SDK ahora integrado, podrá:
- Revisar las guías de aprendizaje de Utilización de Mobile Foundation SDK
- Revisar las guías de aprendizaje de Desarrollo de adaptadores
- Revisar las guías de aprendizaje de Autenticación y seguridad
- Revisar las guías de aprendizaje de Notificaciones
- Revisar Todas las guías de aprendizaje
Inclusive terminology note: The Mobile First Platform team is making changes to support the IBM® initiative to replace racially biased and other discriminatory language in our code and content with more inclusive language. While IBM values the use of inclusive language, terms that are outside of IBM's direct influence are sometimes required for the sake of maintaining user understanding. As other industry leaders join IBM in embracing the use of inclusive language, IBM will continue to update the documentation to reflect those changes.