Créer une application Xamarin.iOS avec Azure Mobile Apps
Note
Ce produit est mis hors service. Pour un remplacement des projets utilisant .NET 8 ou version ultérieure, consultez la bibliothèque Datasync Community Toolkit.
Ce tutoriel vous montre comment ajouter un service principal basé sur le cloud à une application mobile iOS à l’aide de Xamarin.iOS et d’un back-end d’applications mobiles Azure. Vous allez créer à la fois un serveur principal d’application mobile et une liste de tâches simple liste de tâches qui stocke les données d’application dans Azure.
Vous devez suivre ce tutoriel avant d’autres didacticiels Xamarin.iOS à l’aide de la fonctionnalité Mobile Apps dans Azure App Service.
Conditions préalables
Pour suivre ce didacticiel, vous avez besoin des éléments suivants :
-
Visual Studio 2022 avec les charges de travail suivantes.
- ASP.NET et développement web
- Développement Azure
- Développement mobile avec .NET
- Un compte Azure .
-
Azure CLI.
- Connectez-vous avec
az login
et sélectionnez un abonnement approprié avant de commencer.
- Connectez-vous avec
- (Facultatif) azure Developer CLI.
- Un Mac disponible :
- Installer XCode
- Ouvrez Xcode après l’installation afin qu’il puisse ajouter des composants supplémentaires requis.
- Une fois ouvert, sélectionnez Préférences XCode...>Composants, puis installez un simulateur iOS.
- Suivez le guide pour Appairer sur Mac.
Un mac est requis pour compiler la version iOS.
Télécharger l’exemple d’application
Ouvrez le dépôt azure-mobile-apps dans votre navigateur.
Ouvrez la liste déroulante code
, puis sélectionnez Télécharger le ZIP.Une fois le téléchargement terminé, ouvrez votre dossier Téléchargements et recherchez le fichier
azure-mobile-apps-main.zip
.Cliquez avec le bouton droit sur le fichier téléchargé, puis sélectionnez Extraire tout....
Si vous préférez, vous pouvez utiliser PowerShell pour développer l’archive :
C:\Temp> Expand-Archive azure-mobile-apps-main.zip
Les exemples se trouvent dans les exemples dossier dans les fichiers extraits. L’exemple de démarrage rapide est nommé TodoApp
. Vous pouvez ouvrir l’exemple dans Visual Studio en double-cliquant sur le fichier TodoApp.sln
.
Déployer le serveur principal sur Azure
Note
Si vous avez déjà déployé le back-end à partir d’un autre démarrage rapide, vous pouvez utiliser le même back-end et ignorer cette étape.
Pour déployer le service principal, nous allons :
- Provisionnez azure App Service et Azure SQL Database sur Azure.
- Utilisez Visual Studio pour déployer le code de service sur azure App Service nouvellement créé.
Utiliser Azure Developer CLI pour effectuer toutes les étapes
L’exemple TodoApp est configuré pour prendre en charge Azure Developer CLI. Pour effectuer toutes les étapes (approvisionnement et déploiement) :
- installez l’interface cli pour développeurs Azure.
- Ouvrez un terminal et remplacez le répertoire dans le dossier contenant le fichier
TodoApp.sln
. Ce répertoire contient égalementazure.yaml
. - Exécutez
azd up
.
Si vous n’êtes pas déjà connecté à Azure, le navigateur démarre pour vous demander de vous connecter. Vous êtes alors invité à utiliser un abonnement et une région Azure. Azure Developer CLI provisionne ensuite les ressources nécessaires et déploie le code de service dans la région Azure et l’abonnement de votre choix. Enfin, Azure Developer CLI écrit un fichier Constants.cs
approprié pour vous.
Vous pouvez exécuter la commande azd env get-values
pour afficher les informations d’authentification SQL si vous souhaitez accéder directement à la base de données.
Si vous avez effectué les étapes avec Azure Developer CLI, passez à l’étape suivante. Si vous ne souhaitez pas utiliser Azure Developer CLI, suivez les étapes manuelles.
Créez des ressources sur Azure.
Ouvrez un terminal et remplacez le répertoire dans le dossier contenant le fichier
TodoApp.sln
. Ce répertoire contient égalementazuredeploy.json
.Vérifiez que vous avez connecté et sélectionné un abonnement à l’aide d’Azure CLI.
Créez un groupe de ressources :
az group create -l westus -g quickstart
Cette commande crée le groupe de ressources
quickstart
dans la région USA Ouest. Vous pouvez sélectionner n’importe quelle région souhaitée, ce qui vous permet de créer des ressources. Veillez à utiliser le même nom et la même région où qu’ils soient mentionnés dans ce didacticiel.Créez les ressources à l’aide d’un déploiement de groupe :
az deployment group create -g quickstart --template-file azuredeploy.json --parameters sqlPassword=MyPassword1234
Choisissez un mot de passe fort pour votre mot de passe administrateur SQL. Vous en avez besoin ultérieurement lors de l’accès à la base de données.
Une fois le déploiement terminé, obtenez les variables de sortie, car celles-ci contiennent des informations importantes dont vous avez besoin ultérieurement :
az deployment group show -g quickstart -n azuredeploy --query properties.outputs
Voici un exemple de sortie :
Notez chacune des valeurs des sorties pour une utilisation ultérieure.
Publier le code du service
Ouvrez le TodoApp.sln
dans Visual Studio.
Dans le volet de droite, sélectionnez l'de l’Explorateur de solutions
. Cliquez avec le bouton droit sur le projet
TodoAppService.NET6
, puis sélectionnez Définir comme projet de démarrage.Dans le menu supérieur, sélectionnez Build>Publish TodoAppService.NET6.
Dans la fenêtre Publier, sélectionnez Cible : Azure, puis appuyez sur suivant.
Sélectionnez une cible spécifique : Azure App Service (Windows), puis appuyez sur suivant.
Si nécessaire, connectez-vous et sélectionnez un nom d’abonnement approprié.
Vérifiez que d’affichage est défini sur de groupe de ressources.
Développez le groupe de ressources
quickstart
, puis sélectionnez l’App Service créé précédemment.Sélectionnez Terminer.
Une fois le processus de création de profil de publication terminé, sélectionnez Fermer.
Recherchez les dépendances de service et sélectionnez les points triples en regard de la base de données SQL Server, puis sélectionnez Se connecter.
Sélectionnez Azure SQL Database, puis sélectionnez suivant.
Sélectionnez le guide de démarrage rapide base de données, puis sélectionnez suivant.
Renseignez le formulaire à l’aide du nom d’utilisateur et du mot de passe SQL figurant dans les sorties du déploiement, puis sélectionnez Suivant.
Sélectionnez Terminer.
Sélectionnez Fermer une fois terminé.
Sélectionnez publier pour publier votre application sur Azure App Service que vous avez créé précédemment.
Une fois le service principal publié, un navigateur est ouvert. Ajoutez
/tables/todoitem?ZUMO-API-VERSION=3.0.0
à l’URL :
Configurer l’exemple d’application
Votre application cliente doit connaître l’URL de base de votre back-end afin qu’elle puisse communiquer avec elle.
Si vous avez utilisé
azd up
pour approvisionner et déployer le service, le fichierConstants.cs
a été créé pour vous et vous pouvez ignorer cette étape.
Développez le projet
TodoApp.Data
.Cliquez avec le bouton droit sur le projet
TodoApp.Data
, puis sélectionnez Ajouter>classe....Entrez
Constants.cs
comme nom, puis sélectionnez Ajouter.Ouvrez le fichier
Constants.cs.example
et copiez le contenu (Ctrl-A, suivi de Ctrl-C).Basculez vers
Constants.cs
, mettez en surbrillance tout le texte (Ctrl-A), puis collez le contenu à partir de l’exemple de fichier (Ctrl-V).Remplacez le
https://APPSERVICENAME.azurewebsites.net
par l’URL principale de votre service.namespace TodoApp.Data { public static class Constants { /// <summary> /// The base URI for the Datasync service. /// </summary> public static string ServiceUri = "https://demo-datasync-quickstart.azurewebsites.net"; } }
Vous pouvez obtenir l’URL principale de votre service à partir de l’onglet Publier. Veillez à utiliser une URL https.
Enregistrez le fichier. (Ctrl-S).
Générer et exécuter l’application
Dans l’Explorateur de solutions, développez le dossier
xamarin-native
.Cliquez avec le bouton droit sur le projet
TodoApp.iOS
, puis sélectionnez Définir comme projet de démarrage.Dans la barre supérieure, sélectionnez configuration du simulateur iPhone et la cible TodoApp.iOS :
Sélectionnez un simulateur iPhone approprié (j’ai choisi un iPhone SE exécutant iOS 15.5).
Appuyez sur F5 pour générer et exécuter le projet.
Une fois l’application démarrée, vous verrez une liste vide et une zone de texte pour ajouter des éléments dans l’émulateur. Vous pouvez:
- Appuyez sur le bouton + pour ajouter un élément.
- Sélectionnez un élément pour définir ou effacer l’indicateur terminé.
- Appuyez sur l’icône d’actualisation pour recharger les données à partir du service.
Dépannage
Le simulateur distant fourni avec Visual Studio 2022 est incompatible avec XCode 13.3. Vous recevrez le message d’erreur suivant :
Pour contourner ce problème :
- Désactivez le simulateur distant (Outils / Options / Paramètres iOS / décochez Simulateur distant sur Windows). Lorsqu’il est désactivé, le simulateur s’exécute sur le Mac au lieu de Windows. Vous pouvez ensuite interagir avec le simulateur directement sur votre Mac lors de l’utilisation du débogueur, etc. sur Windows.
- Désactivez le simulateur distant comme indiqué ci-dessus afin que le simulateur s’exécute sur le Mac. Utilisez ensuite une application bureau à distance pour vous connecter au Bureau Mac à partir de Windows. Les options bureau à distance incluent Gestionnaire de bureau à distance (rapide et disponible gratuitement) et les clients VNC (plus lents et gratuits).
- Utilisez un appareil physique pour tester au lieu du simulateur. Vous pouvez obtenir un profil d’approvisionnement gratuit pour suivre le didacticiel d’authentification.
Étapes suivantes
Poursuivez le didacticiel en l’ajout de l’authentification à l’application.