Demostración de principio a fin en Android

improve this page | report issue

Información general

El propósito de esta demostración es presentar un flujo de principio a fin:

  1. Desde MobileFirst Operations Console se registrará y descargará una aplicación de ejemplo que está empaquetada de forma previa con el SDK de cliente de MobileFirst
  2. Se desplegará un adaptador nuevo o uno que se proporcione en MobileFirst Operations Console.
  3. Se cambiará la lógica de la aplicación para realizar una solicitud de recurso.

Resultado final:

  • Ping satisfactorio a MobileFirst Server.
  • Recuperación satisfactoria de datos utilizando un adaptador.

Requisitos previos:

  • Android Studio
  • Opcional. MobileFirst CLI (descargar)
  • Opcional. MobileFirst Server autónomo (descargar)

1. Cómo iniciar MobileFirst Server

Asegúrese de haber creado una instancia de Mobile Foundation, o
Si está utilizando MobileFirst Developer Kit, vaya hasta la carpeta del servidor y ejecute el mandato ./run.sh en Mac y Linux o run.cmd en Windows.

2. Creación de una aplicación

En una ventana de navegador, abra MobileFirst Operations Console cargando el URL: http://su-host-servidor:su-puerto-servidor/mfpconsole. Si lo está ejecutando de forma local, utilice http://localhost:9080/mfpconsole. El nombre de usuario y la contraseña son admin/admin.

  1. Pulse el botón Nuevo junto a Aplicaciones
    • Seleccione la plataforma Android
    • Especifique com.ibm.mfpstarterandroid como el identificador de aplicación
    • Especifique 1.0 como valore de versión
    • Pulse Registrar aplicación

    Registrar una aplicación

  2. Pulse en la ventana Obtener código de inicio para seleccionar y descargar la aplicación Android de ejemplo.

    Descargar aplicación de ejemplo

3. Edición de la lógica de la aplicación

  1. Abra el proyecto de Android Studio e importe el proyecto.

  2. Desde el menú de la barra lateral Proyecto, seleccione el archivo app → java → com.ibm.mfpstarterandroid → ServerConnectActivity.java y:

  • Añada las siguientes sentencias import:

    import java.net.URI;
    import java.net.URISyntaxException;
    import android.util.Log;
    
  • Pegue el siguiente fragmento de código, sustituyendo la llamada para WLAuthorizationManager.getInstance().obtainAccessToken:

    WLAuthorizationManager.getInstance().obtainAccessToken("", new WLAccessTokenListener() {
                  @Override
                  public void onSuccess(AccessToken token) {
                      System.out.println("Received the following access token value: " + token);
                      runOnUiThread(new Runnable() {
                          @Override
                          public void run() {
                              titleLabel.setText("Yay!");
                              connectionStatusLabel.setText("Connected to MobileFirst Server");
                          }
                      });
    
                      URI adapterPath = null;
                      try {
                          adapterPath = new URI("/adapters/javaAdapter/resource/greet");
                      } catch (URISyntaxException e) {
                          e.printStackTrace();
                      }
    
                      WLResourceRequest request = new WLResourceRequest(adapterPath, WLResourceRequest.GET);
                        
                      request.setQueryParameter("name","world");
                      request.send(new WLResponseListener() {
                          @Override
                          public void onSuccess(WLResponse wlResponse) {
                              // Will print "Hello world" in LogCat.
                              Log.i("MobileFirst Quick Start", "Success: " + wlResponse.getResponseText());
                          }
    
                          @Override
                          public void onFailure(WLFailResponse wlFailResponse) {
                              Log.i("MobileFirst Quick Start", "Failure: " + wlFailResponse.getErrorMsg());
                          }
                      });
                  }
    
                  @Override
                  public void onFailure(WLFailResponse wlFailResponse) {
                      System.out.println("Did not receive an access token from server: " + wlFailResponse.getErrorMsg());
                      runOnUiThread(new Runnable() {
                          @Override
                          public void run() {
                              titleLabel.setText("Bummer...");
                              connectionStatusLabel.setText("Failed to connect to MobileFirst Server");
                          }
                      });
                  }
              });
    

4. Despliegue un adaptador

Descargue this prepared .adapter artifact y despliéguelo desde MobileFirst Operations Console con la acción Acciones → Desplegar adaptador.

Como alternativa, pulse el botón Nuevo junto a Adaptadores.

  1. Seleccione la opción Acciones → Descargar ejemplo. Descargue el ejemplo de adaptador Java de ejemplo “Hello World”.

    Si Maven y MobileFirst CLI no están instalados, siga las instrucciones de Definir su entorno de desarrollo en la pantalla.

  2. Desde una ventana de línea de mandatos, vaya a la carpeta raíz del proyecto Maven del adaptador y ejecute el mandato:

    mfpdev adapter build
    
  3. Cuando finalice la construcción, despliéguelo desde MobileFirst Operations Console con la acción Acciones → Desplegar adaptador. El adaptador se puede encontrar en la carpeta [adapter]/target.

    Desplegar un adaptador

Aplicación de ejemplo

5. Prueba de la aplicación

  1. En Android Studio, desde el menú de la barra lateral Proyecto, seleccione el archivo app → src → main →assets → mfpclient.properties y edite las propiedades protocol, host y port con los valores correctos para su instancia de MobileFirst Server.

    • Si está utilizando una instancia de MobileFirst Server local, los valores habitualmente son http, localhost y 9080.
    • Si está utilizando una instancia remota de MobileFirst Server (en Bluemix), los valores habitualmente son https, dirección-su-servidor y 443.

    Como alternativa, si ha instalado MobileFirst CLI, navegue hasta la carpeta raíz del proyecto y ejecute el mandato mfpdev app register. Si se utiliza una instancia remota de MobileFirst Server, ejecute el mandato mfpdev server add para añadir el servidor, seguido por ejemplo por mfpdev app register myBluemixServer.

  2. Pulse en el botón Ejecutar aplicación.


Resultados

  • Pulsando el botón Ping MobileFirst Server visualizará Conectado a MobileFirst Server.
  • Si la aplicación se pudo conectar a MobileFirst Server, tendrá lugar una llamada de solicitud de recurso con el adaptador Java desplegado.

La respuesta del adaptador se imprimirá entonces en la vista LogCat de Android Studio.

Imagen de una aplicación que llamó de forma satisfactoria a un recurso desde MobileFirst Server

Siguientes pasos

Aprenda más sobre cómo utilizar adaptadores en aplicaciones, y cómo integrar servicios adicionales como, por ejemplo, notificaciones push, utilizando la infraestructura de seguridad de MobileFirst entre otras cosas:

Last modified on September 21, 2017