Adición de MobileFirst Foundation SDK a aplicaciones Android

improve this page | report issue

Visió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:

Ir a:

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

  1. En Android → Scripts de Gradle, seleccione el archivo build.gradle (Módulo: app).

  2. Añada las siguientes líneas después de apply plugin: 'com.android.application':

    repositories{
         jcenter()
    }
    
  3. Añada lo siguiente dentro de la sección android:

    packagingOptions {
         pickFirst 'META-INF/ASL2.0'
         pickFirst 'META-INF/LICENSE'
         pickFirst 'META-INF/NOTICE'
    }
    
  4. 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 de implementation. Si utiliza implementation, se restringen las API de MobileFirst al mismo módulo, mientras que, si se utiliza api, 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.+'
  1. 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"/>
    
  2. 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'
        }
    }

Registro de la aplicación

  1. Abra una ventana de línea de mandatos y vaya a la raíz del proyecto Android Studio.

  2. Ejecute el mandato:

     mfpdev app register
    

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:

  1. Cargue MobileFirst Operations Console.
  2. Pulse el botón Nuevo junto a Aplicaciones para registrar una nueva aplicación y seguir las instrucciones en la pantalla.
  3. 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á:

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.
Last modified on July 11, 2019