Entwickeln von Android-Apps

Sie können die XenMobile-API in Ihren mobilen Apps verwenden, damit die Apps mit Citrix Endpoint Management interagieren können. Dieser Artikel beschreibt, wie Sie das MDX App SDK in Ihre App-Bibliothek integrieren und welche Schritte zum Testen, Zertifizieren und Veröffentlichen Ihrer Apps erforderlich sind.

Verwenden des MDX App SDK

Hier sind einige Beispiele, wie Sie die APIs verwenden könnten.

  • Einschränkungen für Apps festlegen

Sie können steuern, ob Ihre App den Zugriff auf bestimmte Funktionen oder Aktionen zulässt, basierend darauf, ob API-Aufrufe anzeigen, dass die App verwaltet oder gewrappt ist. Wenn eine App beispielsweise nicht verwaltet oder gewrappt ist, können Sie einem Benutzer möglicherweise Zugriff auf alle Funktionen und Aktionen gewähren. Wenn eine App gewrappt, aber nicht verwaltet ist, können Sie bestimmte Funktionen oder Aktionen einschränken. Wenn eine App gewrappt und verwaltet ist, können Sie zusätzliche Einschränkungen für die App festlegen.

Aktionen basierend auf Citrix Endpoint Management-Richtlinieneinstellungen ausführen

Angenommen, Sie möchten Benutzern eine Benachrichtigung anzeigen, wenn ein Citrix Endpoint Management-Administrator die Richtlinie „Require WiFi“ auf „On“ setzt, was bedeutet, dass die App in einem drahtlosen Netzwerk ausgeführt werden darf. Sie können die API verwenden, um die Richtlinieneinstellung abzurufen und Ihre Codeänderungen dann auf dem Richtlinienwert zu basieren.

  • Aktionen basierend auf benutzerdefinierten Richtlinien ausführen

    Sie können die APIs verwenden, um benutzerdefinierte Richtlinien in Ihren Apps zu lesen. Angenommen, Sie möchten Citrix Endpoint Management-Administratoren ermöglichen, eine Benachrichtigung in der App anzuzeigen. Dazu können Sie eine benutzerdefinierte Richtlinie erstellen, die standardmäßig leer ist oder eine Systemnachricht enthält, die von einem Administrator in der Citrix Endpoint Management-Konsole bereitgestellt wird. Wenn Ihre App verwaltet wird, kann sie erkennen, wenn der Citrix Endpoint Management-Administrator den Richtlinienwert ändert. Wenn der Richtlinienwert eine Nachricht enthält, zeigt Ihre App die Benachrichtigung an.

API-Definitionen finden Sie unter API für Android.

Integrieren des SDK in Ihre App-Bibliothek mit Android Studio und Gradle

Um das MDX App SDK zu Ihren Android-Apps hinzuzufügen, importieren oder kopieren Sie die MDX App Java-Bibliotheken in Ihre App, wie in diesem Abschnitt beschrieben. Die Schritte basieren auf Android Studio und dem Gradle-Build-System. Das Durchführen der Schritte fügt die MDX Apps SDK-Bibliothek zu Ihrer Anwendung hinzu, sodass deren Klassen und Methoden für die App zugänglich sind.

  1. Wenn Sie das neueste MDX Toolkit noch nicht installiert haben, tun Sie dies jetzt.

    1. Melden Sie sich auf der Citrix Endpoint Management-Downloadseite an.

    2. Erweitern Sie XenMobile® Apps and MDX Toolkit.

    3. Suchen Sie die MDX Toolkit-Version, die Sie installieren möchten, und klicken Sie dann auf den entsprechenden Link, um den Download zu starten.

    4. Öffnen Sie MDXToolkit.mpkg mit dem macOS Finder-Tool unter macOS 10.9.4 oder höher und Xcode 5.1 oder höher.

    Der Installationspfad ist Applications/Citrix/MDXToolkit.

    Die MDX App SDK-Dateien befinden sich unter Applications/Citrix/MDXToolkit/data/MDXSDK_Android.

  2. Nach der Installation des MDX Toolkits installieren Sie Android Studio von der Android-Entwickler-Website und führen Sie dann Folgendes aus:

    1. Erstellen Sie im Projektverzeichnis einen Ordner namens libs.

    2. Fügen Sie die Datei worxsdk.aar dem libs-Ordner hinzu.

    3. Bearbeiten Sie die Projektdatei „build.gradle“, um eine Regel hinzuzufügen, die den libs-Ordner als Repository durchsucht und worxsdk.aar aus dem libs-Ordner als Abhängigkeit einschließt.

    4. Erstellen Sie Ihre APK-Datei.

Ein Beispiel für 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')
<!--NeedCopy-->

Die OpenSSL-Bibliothek kann Konflikte mit ähnlichen Bibliotheken in Android-Apps verursachen. Citrix® empfiehlt, die Citrix-Versionen der Bibliotheken zu verwenden, um Konflikte zu vermeiden.

Veröffentlichen einer Android-App

Nachdem Sie das MDX App SDK zu einer Android-App hinzugefügt haben, führen Sie die folgenden Schritte aus, um die App zu wrappen, zu testen, zu zertifizieren und zu veröffentlichen. Wenn Sie Apps über die Befehlszeilenschnittstelle wrappen, schließen Sie eine der folgenden Optionen ein:

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

Der Standardwert ist –appType Enterprise. Verwenden Sie die folgenden Richtlinien, um den appType auszuwählen:

  • Enterprise: Apps erfordern die Installation von Secure Hub auf dem Benutzergerät. Außerdem müssen Sie die Anwendung in StoreFront™ veröffentlichen und die App über Secure Hub installieren.
  • General: ISV-Apps können (anfangs) ohne Secure Hub ausgeführt werden. Die Anwendung kann in den verwalteten Modus wechseln, wenn die App Secure Hub auf dem Benutzergerät erkennt und wenn Sie eine passende App veröffentlichen. Wenn sie als verwaltete App ausgeführt wird, verhalten sich General-Apps genauso wie Enterprise-Apps. Wenn sie als nicht verwaltete App ausgeführt wird, werden Citrix-Richtlinien nicht erzwungen.
  • Premium: ISV-Apps können (anfangs) ohne Secure Hub auf dem Benutzergerät ausgeführt werden. Die App kann in den verwalteten Modus wechseln, wenn sie Secure Hub auf dem Benutzergerät erkennt und wenn Sie eine passende App veröffentlichen. Wenn die App nicht verwaltet ausgeführt wird, erzwingt MDX einige Richtlinien, wie z. B. die Containment-Richtlinien (Zulassen des Netzwerkzugriffs, Bildschirmaufnahmen oder Blockieren der Kamera).

Wenn Sie die gewrappte .apk-Datei in einen App Store oder Webserver hochladen müssen und die URL bereits kennen, fügen Sie die Option -storeURL hinzu. Sie können die URL auch später hinzufügen, wie in diesen Schritten später angegeben.

Das MDX Toolkit gibt eine modifizierte .apk-Datei und eine .mdx-Datei aus. Sie werden diese Dateien in den folgenden Schritten verwenden. Verwenden Sie das MDX Toolkit, um die .apk-Datei für die App zu wrappen. Details finden Sie unter Wrapping Android Mobile Apps in der MDX Toolkit-Dokumentation. Dieser Artikel enthält alle Wrapping-Befehle, einschließlich derer, die speziell für ISV-Apps gelten.

Wichtig:

Die Option zum Wrappen von ISV-Apps über die MDX Toolkit-Benutzeroberfläche ist nicht mehr verfügbar. Sie müssen ISV-Apps über die Befehlszeile wrappen.

So testen Sie Ihre App

  1. Installieren Sie die modifizierte .apk-Datei auf einem Android-Gerät, um alle App-Funktionen zu überprüfen.

  2. Verwenden Sie die Citrix Endpoint Management-Konsole, um die .mdx-Datei zu Citrix Endpoint Management hinzuzufügen und sie zur Überprüfung an ein Android-Gerät zu übermitteln. Details finden Sie unter Hinzufügen einer MDX-App zu Citrix Endpoint Management. Testen Sie auf diesem Gerät die MDX-Funktionalität Ihrer App.

    Wenn Sie benutzerdefinierte Richtlinien hinzugefügt haben, stellen Sie sicher, dass diese Richtlinien in der Citrix Endpoint Management-Konsole angezeigt werden und wie erwartet funktionieren. Wenn Sie default_sdk_policies.xml geändert haben, testen Sie diese Änderungen. Details zum Hinzufügen von Richtlinien und zum Ändern von Richtliniendefaults finden Sie unter Richtliniendefaults und benutzerdefinierte Richtlinien.

  3. Beheben Sie alle in Ihrer App gefundenen Probleme, generieren Sie die App-.apk-Datei neu und wrappen Sie die App erneut mit dem MDX Toolkit.

  4. Senden Sie die ursprüngliche .apk-Datei (nicht die vom MDX Toolkit ausgegebene) zur Validierung und Zertifizierung an Citrix.

  5. Nachdem Citrix Ihre App zertifiziert hat, senden Sie die vom MDX Toolkit generierte .apk-Datei zur Genehmigung an den Google Play Store.

  6. Nachdem Google Ihre App genehmigt hat, führen Sie das MDX Toolkit aus, um die Download-URL der App in der .mdx-Datei zu aktualisieren. Ein Beispielbefehl, der die URL ändert, lautet wie folgt:

    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”

Stellen Sie die endgültige .mdx-Datei einem Citrix Endpoint Management-Administrator zur Verfügung, der sie zu Citrix Endpoint Management hinzufügt und für Benutzer veröffentlicht. Oder, um Ihre App für eine breitere Verteilung verfügbar zu machen, können Sie Ihre MDX-verifizierte App im Citrix Ready Marketplace auflisten. Details finden Sie unter Citrix Ready Verified Program.

Überlegungen zum Upgrade von Apps

Die Citrix Endpoint Management-Software ändert sich zwischen den Releases erheblich. Um die neuesten Funktionen und Fehlerbehebungen nutzen zu können, müssen Sie die neueste Version des MDX Toolkits verwenden, um Ihre App zu wrappen. Stellen Sie sicher, dass Sie Ihre ursprüngliche .ipa- oder .apk-Datei wrappen, nicht die modifizierte Datei, die zuvor vom MDX Toolkit generiert wurde.

Stellen Sie sicher, dass Sie die entsprechende Version des MDX App SDK verwenden.

Entwickeln von Android-Apps