Microsoft Intune App SDK-Cordova-Plug-InMicrosoft Intune App SDK Cordova Plugin

Hinweis

Lesen Sie am besten zuerst den Leitfaden Erste Schritte mit dem Microsoft Intune App SDK. Dort finden Sie Informationen zu den Vorbereitungen, die Sie auf den verschiedenen unterstützten Plattformen für die Integration treffen müssen.You may wish to first read the Get Started with Intune App SDK article, which explains how to prepare for integration on each supported platform.

ÜbersichtOverview

Das Intune App SDK-Cordova-Plug-In in iOS- und Android-Apps, erstellt mit Cordova.The Intune App SDK Cordova Plugin in iOS and Android apps built with Cordova. Das Plug-In ermöglicht es Entwicklern, Funktionen der Intune-App und Datenschutzfunktionen in die Cordova-basierte App zu integrieren.The plugin allows developers to integrate Intune app and data protection features into their Cordova-based app.

Sie werden feststellen, dass Sie die meisten SDK-Funktionen aktivieren können, ohne das Verhalten Ihrer App zu ändern.You will find that you can enable SDK features without changing your app's behavior. Nachdem Sie das Plug-In in Ihrer iOS- oder Android-App erstellt haben, kann der Microsoft Intune-Administrator die Intune-App-Schutzrichtlinie bereitstellen, die aus einer Vielzahl von Datenschutzfeatures besteht.Once you have built the plugin into your iOS or Android app, the Microsoft Intune administrator will be able to deploy Intune app protection policy, which consists of a variety of data protection features. Das Plug-In ist so programmiert, dass die meisten Schritte automatisch beim Cordova-Buildprozess ausgeführt werden.The plugin is built so that most of the steps are automatically performed in the Cordova build process. Dadurch sollten Sie Ihre App schnell für die Intune-App-Schutzrichtlinie aktivieren können.As a result, you should be able to get your app enabled for Intune app protection quickly. Um zu beginnen, befolgen Sie die nachstehenden Anweisungen basierend auf Ihrer Zielplattform.To get started, follow the steps below based on your target platform.

Unterstützte PlattformenSupported Platforms

  • Das Plug-In funktioniert unter den Betriebssystemen Windows, Mac und Linux.The plugin works on Windows, Mac and Linux OS
  • Das Plug-In funktioniert für Android-Apps mit minSdkVersion >= 14 und targetSdkVersion <= 24.The plugin works for Android apps with minSdkVersion >= 14 and targetSdkVersion <= 24
  • Das Plug-In funktioniert für iOS-Apps, die für iOS 9.0 und höher vorgesehen sind.The plugin works for iOS apps targeted for iOS 9.0 and above.

Intune MAM-SzenarienIntune Mobile Application Management scenarios

  • Mit Intune MDM registrierte GeräteIntune MDM-enrolled devices
  • Mit EMM registrierte Geräte von DrittanbieternThird-party EMM-enrolled devices
  • Nicht verwaltete (bei keiner MDM-Lösung registrierte) GeräteUnmanaged devices (not enrolled with any MDM)

Cordova-Apps, die mit dem Intune App SDK Cordova Plug-In erstellt wurden, können jetzt sowohl auf registrierten als auch auf nicht registrierten Geräten mit mobiler Intune-Geräteverwaltung (Mobile Device Management, MDM) Intune-App-Schutzrichtlinien empfangen.Cordova apps built with the Intune App SDK Cordova Plugin can now receive Intune app protection policies on both Intune mobile device management (MDM) enrolled devices and unenrolled devices.

VoraussetzungenPrerequisites

AndroidAndroid

  • Es muss immer die aktuelle Microsoft Intune-Unternehmensportal-App auf dem Gerät installiert sein.The latest Microsoft Intune Company Portal app must always be installed on the device.
  • Wenn Sie bei Verwendung des Plug-Ins den Cordova-Build ausführen, ist mindestens Java 7 erforderlich.Java 7 at minimum must be on the path where you will execute Cordova build when using the plugin.

iOSiOS

  • Für MDM-Features muss die aktuelle Microsoft Intune-Unternehmensportal-App auf dem Gerät installiert sein.The latest Microsoft Intune Company Portal app must be installed on the device for MDM features. Sie ist nicht für die Intune-App-Schutzrichtlinie ohne Geräteregistrierungsfeatures erforderlich.It is not needed for Intune app protection policy without device enrollment features.

Beide PlattformenBoth platforms

Hinweis

Aufgrund eines Apache Cordova-Bugs führen die hier aufgelisteten Apps, die schon über die Plug-In-Abhängigkeit verfügen, das Upgrade auf die benötigte Version nicht automatisch aus.Due to an Apache Cordova bug the filed here, apps that already have the plugin dependency will not automatically upgrade the plugin to the requested version.

SchnellstartQuick start

  1. Updaten Sie Ihre ADAL-Version:Update your version of ADAL:

    cordova plugin remove cordova-plugin-ms-adal
    cordova plugin add cordova-plugin-ms-adal@0.8.x
    
  2. Fügen Sie das Intune App SDK für Cordova-Plug-In hinzu:Add the Intune App SDK for Cordova plugin:

    cordova plugin add cordova-plugin-ms-intune-mam
    

Erstellen des Plug-Ins in Ihrer iOS-AppBuild the plugin into your iOS app

Sie müssen einige Schritte abschließen, um Ihre App für die Intune-App-Schutzrichtlinie zu aktivieren.You'll need to complete some steps for your app to be enabled for Intune app protection policy. Der Einfachheit halber werden diese Schritte im Cordova-Buildprozess als Prebuild-Hook automatisch ausgeführt.For convenience, these steps are performed automatically in the Cordova build process as a pre-build hook. Dadurch werden die automatisierten Schritte Ihre *.pbxproj- , *-Info.plist-, und *.entitlements-Dateien ändern, die einer Projektkonfiguration zugeordnet sind.As a result, the automated steps will modify your *.pbxproj , *-Info.plist, and *.entitlements files that are associated with a project configuration. Wenn das Projekt keine Berechtigungsdatei enthält, wird das Plug-In automatisch eine erstellen.If your project doesn't contain an entitlements file, the plugin will create one automatically.

Dieses Setup unterstützt nur ein einziges Ziel. Wenn es mehrere Ziele gibt, führt es die Konfiguration auf dem Ziel aus, das als erstes gefunden wird.This setup only supports a single target and will perform the configuration on the first target found if there are multiple targets. Wenn der Prozess fehlschlägt, überprüfen Sie, dass:If the process fails, check that:

  1. Das Xcode-Projekt Ihrer App [name].xcodeproj ist, wobei [name] der Wert wie definiert in config.xml ist.Your app's Xcode project is [name].xcodeproj where [name] is the value defined in config.xml
  2. Ihr Projekt verwendet die Standardverzeichnisstruktur der Cordova-App.Your project uses the standard Cordova app directory structure.

Erstellen des Plug-Ins in Ihrer Android-AppBuild the plugin into your Android app

  1. Importieren Sie dieses Plug-In mit den aktuellsten Cordova-Tools.Import this plugin with the latest Cordova tools. Das Plug-In wird automatisch als ein after_compile-Schritt aufgerufen.The plugin will be automatically invoked as an after_compile step.

  2. Das Plug-In erstellt am Ende des Buildprozesses eine Intune-fähige Version einer erstellten APK-Datei (Android API 14+).The plugin will create a Intune-enabled version of a built apk (Android API 14+) at the end of the build process. Das Buildausgabe wird eine [Project]-intunewrapped-[Build_Configuration].apk (z.B. helloWorld-intunewrapped-debug.apk) enthalten.The build output will contain a [Project]-intunewrapped-[Build_Configuration].apk (e.g. helloWorld-intunewrapped-debug.apk).

Hinweis

Das Plug-In unterstützt nur Gradle-Builds.The plugin only supports gradle builds.

Aufgrund eines Cordova-Fehlers, der hier aufgeführt ist, und verursacht, dass bestimmte Cordova-Hooks in cordova run ignoriert werden, müssen Sie Folgendes tun, um die umschlossene App aus der Befehlszeile auszuführen:Due to a Cordova bug filed here that causes certain Cordova hooks to be ignored on cordova run, to run the wrapped app from the command line, you must do the following:

$ cordova build
$ cordova run --nobuild

Signieren Ihrer Android-AppSign your Android app

Das Plug-In erkennt automatisch Signierungsinformationen, die Sie an folgenden Speicherorten für Cordova angegeben haben:The plugin automatically recognizes signing information you have provided to Cordova at the following locations:

  • platforms/android/debug-signing.propertiesplatforms/android/debug-signing.properties
  • platforms/android/release-signing.propertiesplatforms/android/release-signing.properties
  • res/native/android/ant.propertiesres/native/android/ant.properties

Lesen Sie die Cordova-Gradle-Signierungsinformationen, um mehr über das erwartete Format zu erfahren.See the Cordova gradle signing information for more information about the expected format.

Wir unterstützen derzeit nicht die Möglichkeit, Signierungsinformationen in build.json oder an beliebigen Speicherorten bereitzustellen, die dem Cordova-Build über Parameter bereitgestellt werden.We currently don't support the ability to provide signing information in build.json or arbitrary locations provided via parameters to Cordova build.

Debugging aus Visual StudioDebugging from Visual Studio

Nachdem die App zum ersten Mal gestartet wurde, sollten Sie ein Dialogfeld sehen, das Sie darüber informiert, dass die App von Intune verwaltet wird.After launching the app for the first time you should see a dialog notifying you that the app is managed by Intune. Klicken Sie auf „Nicht mehr anzeigen“. Klicken Sie dann in VS noch einmal auf die Schaltfläche Debuggen/Ausführen, damit Haltepunkte erreicht werden.Hit "Don't show again" and click the debug/run button again from VS for breakpoints to be hit.

Bekannte EinschränkungenKnown Limitations

AndroidAndroid

  • Die MultiDex Unterstützung ist unvollständig.MultiDex support is incomplete.
  • Die App muss minSdkVersion von 14 und targetSdkVersion von 24 oder niedriger haben.App must have minSdkVersion of 14 and targetSdkVersion of 24 or below. Wir unterstützen derzeit keine Apps für API 25.We currently don't support apps targeting API 25
  • Wir können keine Apps erneut signieren, die mit dem V2-Signaturschema signiert wurden.We cannot re-sign apps that were signed with the V2 Signature Scheme. Wenn V2-signierte Apps von dem Plug-In umschlossen werden, ist die umschlossene Ausgabe-APK unsigniert.When V2-signed apps are wrapped by the plugin, the wrapped output .apk will be unsigned. *

    • Sie können die Cordova-Standard-V2-Signierung deaktivieren, indem Sie Ihrer build-extras.gradle-Datei Folgendes hinzufügen:You can disable Cordova's default V2 Signing by adding the following to your build-extras.gradle file:
    android {
        signingConfigs {
            release {
                v2SigningEnabled false
            }
            debug {
                v2SigningEnabled false
            }
        }
        buildTypes {
            release {
                signingConfig signingConfigs.release
            }
            debug {
                signingConfig signingConfigs.debug
            }
        }
    }
    

iOSiOS

  • Wenn Sie die Liste der UTIs unter dem Knoten CFBundleDocumentTypes der Info.plist-Datei verändern, müssen Sie die Intune-UTIs im Bereich „Importierte-UTIs“ der gleichen PLIST-Datei löschen (Knoten UTImportedTypeDeclarations), bevor Sie mit der erneuten Erstellung fortfahren.Whenever you modify the list of UTI's under the CFBundleDocumentTypes node of the Info.plist file, you must clear the Intune UTI's in the Imported UTI's section of the same plist file (UTImportedTypeDeclarations node) before building again. Alle Intune-UTIs beginnen mit dem Präfix com.microsoft.intune.mam.All of the Intune UTI's will start with the prefix com.microsoft.intune.mam.

  • Wenn Sie das Intune App SDK für Cordova-Plug-In aus Ihrem Cordova-Projekt entfernen möchten, müssen Sie auch die iOS-Plattform entfernen und sie erneut hinzufügen, um einige der Intune-Konfigurationen in den XCODEPROJ- und PLIST-Dateien rückgängig zu machen.If you want to remove the Intune App SDK for Cordova plugin from your Cordova project, you must also remove the iOS platform and re-add it, in order to undo some of the Intune configuration in the .xcodeproj and .plist files.

Um Feedback zu einem Produkt zu geben, besuchen Sie folgende Seite Intune Feedback