Desarrollar aplicaciones Android

Puede usar la API de XenMobile en las aplicaciones móviles para permitir que interactúen con Citrix Endpoint Management. En este artículo se describe cómo integrar el SDK de aplicaciones MDX en la biblioteca de aplicaciones y los pasos necesarios para realizar pruebas, certificar y publicar las aplicaciones.

Cómo usar el SDK de aplicaciones MDX

Estos son algunos ejemplos de cómo se pueden usar las API.

Establecer restricciones en aplicaciones

Se puede controlar si la aplicación permite el acceso a ciertas funciones o acciones en función de si las llamadas de API indican que la aplicación está administrada o empaquetada. Por ejemplo, si una aplicación no está administrada ni empaquetada, se puede permitir que un usuario acceda a todas las funciones y las acciones. Si una aplicación está empaquetada, pero no administrada, se puede restringir algunas funciones o acciones. Si una aplicación está empaquetada y administrada, se puede poner restricciones adicionales a la aplicación.

Realizar acciones según la configuración de directivas de Citrix Endpoint Management

Supongamos que quiere mostrar una notificación a los usuarios si un administrador de Citrix Endpoint Management establece la directiva “Requerir Wi-Fi” en “Sí”, lo que significa que la aplicación tiene permiso para ejecutarse en una red inalámbrica. Puede usar la API para buscar la configuración de directiva y, a continuación, basar los cambios de código en el valor de la directiva.

  • Realizar acciones según la configuración de directivas personalizadas

    Puede usar las API para leer directivas personalizadas en las aplicaciones. Por ejemplo, supongamos que quiere permitir que los administradores de Citrix Endpoint Management muestren una notificación en la aplicación. Para ello, puede crear una directiva personalizada que esté vacía de forma predeterminada o contiene un mensaje del sistema que deba proporcionar un administrador desde la consola de Citrix Endpoint Management. Si la aplicación está administrada, podrá detectar el cambio del valor de la directiva que realice el administrador de Citrix Endpoint Management. Si el valor de la directiva contiene un mensaje, la aplicación puede mostrar la notificación.

Para obtener definiciones de las API, consulte API para Android.

Integración del SDK en la biblioteca de aplicaciones mediante Android Studio y Gradle

Para agregar el SDK de aplicaciones MDX a una aplicación Android, debe importar o copiar las bibliotecas Java de aplicaciones MDX a esa aplicación como se describe en esta sección. Los pasos se basan en Android Studio y el sistema de compilación de Gradle. Siguiendo estos pasos, se agrega la biblioteca MDX App SDK a la aplicación, de modo que esta pueda acceder a las clases y los métodos que esa biblioteca ofrece.

  1. Si no ha instalado ya MDX Toolkit más reciente, hágalo ahora.

    1. Inicie sesión en la página de descargas de Citrix Endpoint Management.

    2. Expanda XenMobile Apps and MDX Toolkit.

    3. Busque la versión de MDX Toolkit que quiera instalar y, a continuación, haga clic en el enlace para comenzar la descarga.

    4. Abra MDXToolkit.mpkg con la herramienta Finder de macOS en macOS 10.9.4, o una versión posterior, y Xcode 5.1, o una versión posterior.

    La ruta de instalación es /Applications/Citrix/MDXToolkit.

    Los archivos del SDK de aplicaciones MDX se encuentran en Applications/Citrix/MDXToolkit/data/MDXSDK_Android.

  2. Después de instalar el MDX Toolkit, instale Android Studio desde el sitio Web de desarrolladores de Android y, a continuación, haga lo siguiente:

    1. En el directorio del proyecto, cree una carpeta llamada libs.

    2. Agregue el archivo worxsdk.aar a la carpeta libs.

    3. Modifique el proyecto “build.gradle” para agregar una regla que busque en la carpeta libs como si fuera un repositorio y para incluir worxsdk.aar desde la carpeta libs como si fuera una dependencia.

    4. Compile el archivo APK.

Un ejemplo de worxsdk.aar:

    // Top-level build file where you can add configuration options common to all sub-projects/modules.
    buildscript {
        repositories {
            jcenter()
        }
        dependencies {
            classpath 'com.android.tools.build:gradle:1.1.0'
            // NOTE: Do not place your application dependencies here; they belong
            // in the individual module build.gradle files
        }
    }
    allprojects {
        repositories {
            jcenter()
            flatDir {
                dirs 'libs'
            }
        }
    }
    dependencies {
        compile(name:'worxsdk', ext:'aar')

La biblioteca de OpenSSL puede provocar conflictos con bibliotecas similares en las aplicaciones Android. Citrix recomienda usar las versiones de las bibliotecas de Citrix para evitar conflictos.

Publicación de una aplicación Android

Después de agregar el SDK de aplicaciones MDX a una aplicación Android, lleve a cabo los siguientes pasos para empaquetar, probar, certificar y publicar la aplicación. Cuando empaquete aplicaciones desde la interfaz de línea de comandos, incluya una de las siguientes opciones:

  • –appType Enterprise
  • -appType Premium
  • -appType General

El valor predeterminado es –appType Enterprise. Utilice las siguientes instrucciones para seleccionar appType (tipo de aplicación):

  • Enterprise: Requieren la instalación de Secure Hub en el dispositivo del usuario. Además, también debe publicar la aplicación en StoreFront e instalarla a través de Secure Hub.
  • General: Las aplicaciones ISV pueden ejecutarse sin Secure Hub (inicialmente). La aplicación puede pasar al modo administrado cuando detecte Secure Hub en el dispositivo de usuario y si se publica una aplicación correspondiente. Cuando se ejecute como una aplicación administrada, la aplicación General se comporta de la misma manera que las aplicaciones de empresa (Enterprise). Cuando se ejecuta como una aplicación no administrada, no se aplican las directivas de Citrix.
  • Premium: Las aplicaciones ISV pueden ejecutarse sin Secure Hub instalado en el dispositivo de usuario (inicialmente). La aplicación puede pasar al modo administrado si detecta Secure Hub en el dispositivo de usuario y si se publica una aplicación correspondiente. Cuando la aplicación se ejecute como no administrada, MDX aplica algunas directivas, como las directivas de contención (permiten el acceso de red, la captura de pantalla o bloquean la cámara).

Si necesita cargar el archivo APK empaquetado a un almacén de aplicaciones o servidor web y ya dispone de la URL, agregue la opción -storeURL. También puede agregar la dirección URL más tarde, como se indica en los pasos siguientes.

MDX Toolkit presenta como resultado un archivo APK modificado y un archivo MDX. Se usarán esos archivos en los pasos siguientes. Use MDX Toolkit para empaquetar el archivo APK de la aplicación. Para obtener más información, consulte “Empaquetar aplicaciones móviles Android” en la documentación de MDX Toolkit. Este artículo contiene todos los comandos de empaquetado, incluidos aquellos específicos de aplicaciones ISV.

Importante:

La opción para empaquetar aplicaciones ISV desde la interfaz de usuario de MDX Toolkit ya no está disponible. Debe empaquetar las aplicaciones ISV desde la línea de comandos.

Para probar la aplicación

  1. Instale el archivo APK modificado en un dispositivo Android para verificar todas las funciones de la aplicación.

  2. Use la consola de Citrix Endpoint Management para agregar el archivo MDX a Citrix Endpoint Management y entregarlo a un dispositivo Android para probarlo. Para obtener más información, consulte Para agregar una aplicación MDX a Citrix Endpoint Management. En ese dispositivo, pruebe la funcionalidad MDX de la aplicación.

    Si agregó directivas personalizadas, debe comprobar que aparecen en la consola de Citrix Endpoint Management y funcionan según lo previsto. Si modificó default_sdk_policies.xml, pruebe los cambios. Para obtener más información sobre cómo agregar directivas y cambiar los valores predeterminados de las directivas, consulte Valores predeterminados de directivas y directivas personalizadas.

  3. Solucione los problemas que haya en la aplicación, vuelva a generar el archivo APK y vuelva a empaquetar la aplicación con MDX Toolkit.

  4. Envíe el archivo APK original (no el que resulte de usar MDX Toolkit) a Citrix para la validación y la certificación.

  5. Una vez que Citrix haya certificado la aplicación, envíe el archivo APK generado por MDX Toolkit a Google Play Store para la aprobación.

  6. Después de que Google apruebe su aplicación, ejecute MDX Toolkit para actualizar la URL de descarga de la aplicación en el archivo MDX. Este es un comando de ejemplo que cambia la dirección URL:

    java -jar /Applications/Citrix/MDXToolkit/ManagedAppUtility.jar
    setinfo
    -in ~/Desktop/SampleApps/Sample.mdx
    -out ~/Desktop/SampleApps/wrapped/Sample.mdx
    -storeURL
    “https://play.google.com/store/apps/details?id=com.zenprise”

Facilite el archivo MDX final a un administrador de Citrix Endpoint Management, quien lo agregará a Citrix Endpoint Management y lo publicará a los usuarios. O bien, para que la aplicación esté disponible para una distribución más amplia, puede incluir su aplicación MDX verificada en Citrix Ready Marketplace. Para obtener información detallada, consulte Citrix Ready Verified Program.

Consideraciones sobre la actualización de aplicaciones

El software de Citrix Endpoint Management cambia considerablemente de una versión a otra. Para sacar partido de las ventajas que ofrecen las últimas funciones y correcciones de errores, debe utilizar la versión más reciente de MDX Toolkit para empaquetar la aplicación. Empaquete su archivo .ipa o APK original, no el archivo modificado que haya generado previamente MDX Toolkit.

Debe utilizar la versión correspondiente del SDK de aplicaciones MDX.

Desarrollar aplicaciones Android