Kit de développement logiciel (SDK) d’application Intune pour iOS - Annexe

Objectifs de la scène

Le guide contient quelques meilleures pratiques iOS pour intégrer le SDK Intune, des FAQ courantes et d’autres contenus utiles.

Meilleures pratiques iOS

Voici les meilleures pratiques recommandées pour le développement pour iOS :

  • Le système de fichiers iOS respecte la casse. Vérifiez que la casse est correcte pour les noms de fichiers tels que IntuneMAMResources.bundle.
  • L’inscription de schémas d’URL personnalisés permet à des URL spécifiques de rediriger vers votre application. iOS et iPadOS permettent à plusieurs applications d’enregistrer le même schéma d’URL personnalisé et le système d’exploitation détermine l’application invoquée. Reportez-vous à la documentation Apple Définition d’un schéma d’URL personnalisé pour votre application afin d’obtenir des recommandations pour éviter les collisions de schémas d’URL personnalisés et des instructions de sécurité pour la gestion des URL malformées.

Foires aux questions

Toutes les API sont-elles adressables via Swift natif ou l’interopérabilité Objective-C et Swift ?

Les API du SDK de l’application Intune sont uniquement dans Objective-C et ne prennent pas en charge le protocole Swift natif. Une interopérabilité rapide avec Objective-C est requise.

Tous les utilisateurs de mon application doivent-ils être enregistrés auprès du service APP-WE ?

Non. En fait, seuls les comptes professionnels ou scolaires doivent être inscrits auprès du Kit de développement logiciel (SDK) d’application Intune. Les applications sont chargées de déterminer si un compte est utilisé dans un contexte professionnel ou scolaire.

Qu’en est-il des utilisateurs qui se sont déjà connectés à l’application ? Doivent-ils être inscrits ?

L’application est responsable de l’inscription des utilisateurs une fois qu’ils ont été authentifiés avec succès. L’application est également responsable de l’inscription de tous les comptes existants qui auraient pu être présents avant que l’application ne dispose de la fonctionnalité MAM sans GPM.

Pour ce faire, l’application doit utiliser la registeredAccounts: méthode. Cette méthode renvoie un NSDictionary dans lequel tous les comptes sont enregistrés dans le service GAM d’Intune. Si des comptes existants dans l’application ne figurent pas dans la liste, l’application doit enregistrer et inscrire ces comptes via registerAndEnrollAccount:.

À quelle fréquence le Kit de développement logiciel (SDK) tente-t-il à nouveau les inscriptions ?

Le Kit de développement logiciel (SDK) retente automatiquement toutes les inscriptions ayant échoué précédemment sur un intervalle de 24 heures. Le Kit de développement logiciel (SDK) permet de s’assurer que si l’organisation d’un utilisateur a activé la gestion des applications mobiles après la connexion de l’utilisateur à l’application, l’utilisateur inscrit et reçoit correctement les stratégies.

Le Kit de développement logiciel (SDK) arrête la nouvelle tentative lorsqu’il détecte qu’un utilisateur a inscrit l’application avec succès. Cela s’explique par le fait qu’un seul utilisateur peut inscrire une application à un moment donné. Si l’utilisateur n’est pas inscrit, les nouvelles tentatives recommencent au même intervalle de 24 heures.

Pourquoi l’utilisateur doit-il être désinscrit ?

Le Kit de développement logiciel (SDK) effectue régulièrement ces actions en arrière-plan :

  • Si l’application n’est pas encore inscrite, elle essaie d’inscrire tous les comptes enregistrés toutes les 24 heures.
  • Si l’application est inscrite, le Kit de développement logiciel (SDK) recherche les mises à jour de stratégie GAM toutes les 8 heures.

La désinscription d’un utilisateur informe le Kit de développement logiciel (SDK) que l’utilisateur n’utilisera plus l’application et le Kit de développement logiciel (SDK) peut arrêter tous les événements périodiques pour ce compte d’utilisateur. Il déclenche également une désinscription de l’application et une réinitialisation sélective si nécessaire.

Dois-je définir l’indicateur doWipe sur true dans la méthode de désinscription ?

Cette méthode doit être appelée avant que l’utilisateur ne soit déconnecté de l’application. Si les données de l’utilisateur sont supprimées de l’application dans le cadre de la déconnexion, doWipe peut être défini sur false. Toutefois, si l’application ne supprime pas les données de l’utilisateur, doWipe elle doit être définie sur true afin que le Kit de développement logiciel (SDK) puisse supprimer les données.

Y a-t-il d’autres moyens de désinscrire une application ?

Oui, l’administrateur informatique peut envoyer une commande d’effacement sélectif à l’application. Cette opération annule l’inscription et désinscrit l’utilisateur, et efface ses données. Le Kit de développement logiciel (SDK) gère automatiquement ce scénario et envoie une notification par le biais de la méthode de désinscription déléguée.

Existe-t-il un exemple d’application qui montre comment intégrer le Kit de développement logiciel (SDK) ?

Oui. Voir l’exemple d’application Chatr.

Comment puis-je résoudre les problèmes de mon application ?

Le SDK Intune pour iOS 9.0.3+ prend en charge la possibilité d’ajouter une console de diagnostics dans l’application mobile pour tester les stratégies et consigner les erreurs. IntuneMAMDiagnosticConsole.hdéfinit l’interface de IntuneMAMDiagnosticConsole classe, que les développeurs peuvent utiliser pour afficher la console de diagnostic Intune. Cela permet aux utilisateurs finaux ou aux développeurs pendant le test de collecter et de partager les journaux Intune pour aider à diagnostiquer tout problème qu’ils peuvent rencontrer. Cette API est facultative pour les intégrateurs.