Développement d’applications Android

Vous pouvez utiliser l’API XenMobile dans vos applications mobiles pour permettre aux applications d’interagir avec Citrix Endpoint Management. Cet article explique comment intégrer le SDK de l’application MDX à votre bibliothèque d’applications et les étapes requises pour tester, certifier et publier vos applications.

Comment utiliser le SDK de l’application MDX

Voici quelques exemples d’utilisation de l’API.

Placer des restrictions sur les applications

Vous pouvez contrôler si votre application autorise l’accès à certaines fonctionnalités ou actions selon que les appels API indiquent que l’application est gérée ou encapsulée. Par exemple, si une application n’est pas gérée ou encapsulée, vous pouvez permettre à un utilisateur d’accéder à toutes les fonctionnalités et actions. Si une application est encapsulée, mais non gérée, vous pouvez restreindre certaines fonctionnalités ou actions. Si une application est encapsulée et gérée, vous pouvez placer des restrictions sur l’application.

Effectuer des actions basées sur les paramètres de stratégie Citrix Endpoint Management

Supposons que vous souhaitez afficher une notification pour les utilisateurs si un administrateur Citrix Endpoint Management définit la stratégie Exiger Wi-Fi sur Activé, ce qui signifie que l’application est autorisée à être exécutée sur un réseau sans fil. Vous pouvez utiliser l’API pour rechercher le paramètre de stratégie et baser les modifications de votre code sur la valeur de stratégie.

  • Effectuer des actions basées sur des stratégies personnalisées

    Vous pouvez utiliser l’API pour lire des stratégies personnalisées dans vos applications. Par exemple, supposons que vous voulez autoriser les administrateurs Citrix Endpoint Management à afficher une notification dans l’application. Pour ce faire, créez une stratégie personnalisée qui est vide par défaut ou contient un message système fourni par un administrateur dans la console Citrix Endpoint Management. Lorsque l’application est gérée, elle peut détecter lorsque l’administrateur Citrix Endpoint Management modifie la valeur de stratégie. Si la valeur de stratégie contient un message, votre application affiche la notification.

Pour les définitions de l’API, consultez la section API pour Android.

Intégration du SDK dans votre bibliothèque d’applications à l’aide de Android Studio et Gradle

Pour ajouter le SDK de l’application MDX à vos applications Android, vous devez importer ou copier les bibliothèques Java de l’application MDX dans votre application, comme décrit dans cette section. Les étapes sont basées sur Android Studio et le système Gradle. Cette procédure ajoute la bibliothèque du SDK des applications MDX à votre application afin que ses classes et méthodes soient accessibles pour l’application.

  1. Si vous n’avez pas encore installé la dernière version du MDX Toolkit, faites-le maintenant.

    1. Connectez-vous à la page Téléchargements de Citrix Endpoint Management.

    2. Développez Applications XenMobile et MDX Toolkit.

    3. Recherchez la version de MDX Toolkit que vous souhaitez installer, puis cliquez sur le lien pour lancer le téléchargement.

    4. Ouvrez MDXToolkit.mpkg avec l’outil macOS Finder sur macOS 10.9.4 ou version ultérieure et Xcode 5.1 ou version ultérieure.

    Le chemin d’installation est Applications/Citrix/MDXToolkit.

    Les fichiers du SDK de l’application MDX se trouvent dans Applications/Citrix/MDXToolkit/data/MDXSDK_Android.

  2. Après l’installation de l’outil MDX Toolkit, installez Android Studio à partir du site Web de développeurs Android, puis effectuez les opérations suivantes :

    1. Dans le répertoire de projet, créez un dossier nommé libs.

    2. Ajoutez le fichier worxsdk.aar au dossier libs.

    3. Modifiez le projet « build.gradle » pour ajouter une règle qui effectue une recherche dans le dossier libs comme référentiel et inclut worxsdk.aar depuis le dossier libs comme dépendance.

    4. Créez votre fichier APK.

Exemple 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 bibliothèque OpenSSL peut entraîner des conflits avec des bibliothèques similaires dans les applications Android. Citrix vous recommande d’utiliser les versions Citrix des bibliothèques afin d’éviter les conflits.

Publication d’une application Android

Après avoir ajouté le SDK de l’application MDX à une application Android, effectuez les étapes suivantes pour encapsuler, tester, certifier et publier l’application. Lors de l’encapsulation d’applications à l’aide de l’interface de ligne de commande, vous devez inclure l’une des options suivantes :

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

La valeur par défaut est –appType Enterprise. Suivez les recommandations suivantes pour sélectionner le type d’application :

  • Enterprise : les applications d’entreprise nécessitent la réinstallation de Secure Hub sur la machine utilisateur. Vous devez également publier l’application dans StoreFront et installer l’application via Secure Hub.
  • General : les applications ISV General peuvent fonctionner sans Secure Hub (initialement). L’application peut passer en mode géré lorsqu’elle détecte Secure Hub sur la machine utilisateur, et si vous publiez une application correspondante. Lors de l’exécution d’une application gérée, les applications General fonctionnent de la même façon que les applications d’entreprise. Lors d’une exécution en tant qu’application non gérée, les stratégies Citrix ne sont pas appliquées.
  • Premium : les applications ISV Premium peuvent s’exécuter sans que Secure Hub soit installé sur la machine utilisateur (initialement). L’application peut passer à une application gérée si elle détecte Secure Hub sur la machine utilisateur, et si vous publiez une application correspondante. Lors de l’exécution d’applications non gérées, MDX doit appliquer certaines stratégies, telles que les stratégies de contention des données (permettant l’accès réseau, la capture d’écran, ou bloquant l’appareil photo).

Si vous avez besoin de télécharger le fichier .apk encapsulé sur un magasin d’applications ou un serveur Web, et que vous connaissez déjà l’adresse URL, ajoutez l’option -storeURL. Vous pouvez également ajouter l’adresse URL ultérieurement, comme indiqué plus tard dans ces étapes.

Le MDX Toolkit produit un fichier .apk modifié et un fichier .mdx. Vous allez utiliser ces fichiers dans les étapes suivantes. Utilisez l’outil MDX Toolkit pour encapsuler le fichier .apk pour l’application. Pour de plus amples informations, consultez la section Encapsulation d’applications mobiles Android dans la documentation MDX Toolkit. Cet article contient toutes les commandes d’encapsulation, y compris celles qui sont spécifiques à des applications ISV.

Important :

L’option d’encapsulation des applications ISV à l’aide de l’interface utilisateur de l’outil MDX Toolkit n’est plus disponible. Vous devez encapsuler les applications ISV à l’aide de la ligne de commande.

Pour tester votre application

  1. Installez le fichier .apk modifié sur un appareil Android à vérifier toutes les fonctions de l’application.

  2. Utilisez la console Citrix Endpoint Management pour ajouter le fichier .mdx à Citrix Endpoint Management et le mettre à la disposition d’un appareil Android à des fins de test. Pour plus de détails, consultez Pour ajouter une application MDX à Citrix Endpoint Management. Sur cet appareil, testez la fonctionnalité MDX de votre application.

    Si vous avez ajouté des stratégies personnalisées, vérifiez que les stratégies apparaissent dans la console Citrix Endpoint Management et fonctionnent comme prévu. Si vous avez modifié default_sdk_policies.xml, testez ces modifications. Pour de plus amples informations sur l’ajout de stratégies et la modification des valeurs par défaut des stratégies, consultez la section Valeurs par défaut des stratégies et stratégies personnalisées.

  3. Corrigez les erreurs trouvées dans votre application, régénérez le fichier .apk, et encapsulez de nouveau l’application avec le MDX Toolkit.

  4. Envoyez le fichier .apk d’origine (et non pas celui produit par le MDX Toolkit) à Citrix pour validation et certification.

  5. Une fois que Citrix a attesté votre application, soumettez le fichier .apk généré par l’outil MDX Toolkit à Google Play Store pour approbation.

  6. Une fois que Google a approuvé votre application, exécutez l’outil MDX Toolkit pour mettre à jour l’adresse URL de téléchargement de l’application dans le fichier .mdx. Voici un exemple de commande qui modifie l’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”
    
  7. Fournissez le fichier .mdx final à un administrateur Citrix Endpoint Management, qui l’ajoutera à Citrix Endpoint Management et le publiera pour les utilisateurs. Ou, pour que votre application soit mise à disposition à une plus grande échelle, vous pouvez afficher votre application MDX vérifiée dans Citrix Ready Marketplace. Pour plus de détails, consultez Citrix Ready Worx Verified Program.

Considérations pour la mise à niveau des applications

Le logiciel Citrix Endpoint Management change de manière significative d’une version à l’autre. Pour bénéficier des dernières fonctionnalités et corrections de bogues, vous devez utiliser la dernière version de l’outil MDX Toolkit pour encapsuler votre application. Veillez à encapsuler le fichier .ipa ou .apk d’origine et non le fichier modifié qui a été préalablement généré par le MDX Toolkit.

Assurez-vous d’utiliser la version correspondante du SDK de l’application MDX.