Fermer

avril 22, 2024

Les Sables de MAUI : Numéro 142

Les Sables de MAUI : Numéro 142


Bienvenue dans les Sables de MAUI, des numéros de type newsletter dédiés à rassembler les derniers contenus .NET MAUI pertinents pour les développeurs.

Une particule de sable, minuscule et inoffensive. Mais rassemblez beaucoup de particules de sable et nous avons quelque chose de grand : une force avec laquelle il faut compter. Ce sont les plus petits grains de sable qui s’additionnent souvent pour former d’immenses plages, dunes et déserts.

Les développeurs .NET sont enthousiasmés par la réalité de l’interface utilisateur des applications multiplateformes .NET (.NET FIXE) : l’évolution de la pile technologique de développement multiplateforme .NET moderne. Avec des outils stables et un écosystème riche, .NET MAUI permet aux développeurs de créer des applications multiplateformes natives pour mobile/ordinateur de bureau à partir d’une base de code partagée unique, tout en invitant les technologies Web dans le mélange.

Même s’il faudra peut-être un long vol pour atteindre les sables de l’île MAUI, l’enthousiasme des développeurs autour de .NET MAUI est tout à fait palpable avec tout le contenu créé. Comme les grains de sable, chaque actualité/article/documentation/vidéo/tutoriel/livestream contribue aux expériences des développeurs dans .NET MAUI et nous développons une communauté/un écosystème désireux d’apprendre et d’aider.

Sands of MAUI est une humble tentative de rassembler toute la génialité de .NET MAUI en un seul endroit. Voici ce qui est remarquable pour la semaine de 22 avril 2024:

Appui long dans .NET MAUI

.NET MAUI est l’évolution de la pile de développement multiplateforme .NET moderne, permettant aux développeurs d’atteindre des facteurs de forme mobiles et de bureau à partir d’une seule base de code partagée. Les applications multiplateformes modernes exigent cependant une cohérence des expériences utilisateur : interactions tactiles sur mobile et prise en charge de la souris/clavier sur ordinateur. Heureusement, il existe de l’aide pour les développeurs .NET MAUI et Gérald Versluis a produit une vidéo—détection d’un appui long dans les applications .NET MAUI avec TouchBehavior.

Le kit d’outils communautaires .NET MAUI est une collection d’éléments réutilisables pour le développement d’applications avec .NET MAUI, notamment des animations, des comportements, des convertisseurs, des effets et des assistants. L’objectif est de simplifier les tâches courantes des développeurs lors de la création d’applications iOS, Android, macOS et WinUI à l’aide de .NET MAUI, une bibliothèque facilement accessible via un package NuGet.

Le célèbre TouchEffect de Xamarin Toolkit a été porté sur .NET MAUI et est désormais connu sous le nom de TouchBehavior. Bien que TouchBehavior puisse faire beaucoup de choses, l’une d’elles consiste à détecter un appui long sur n’importe quel élément visuel dans les applications .NET MAUI, et cela fonctionne de la même manière sur mobile et sur ordinateur. Gerald a présenté l’expérience du développeur : intégration du kit d’outils communautaires .NET MAUI, implémentation de TouchBehavior pour détecter les appuis longs, connexion d’une fonction de commande d’appui long et présentation de la démo sur Android. TouchBehavior est un excellent ajout à la boîte à outils de la communauté .NET MAUI : bravo à la productivité des développeurs.

.NET MAUI Appui long - Gerald Versluis

Déploiements Apple

.NET MAUI est l’évolution de la pile de développement multiplateforme .NET moderne, permettant aux développeurs d’atteindre des facteurs de forme mobiles et de bureau à partir d’une seule base de code partagée. Pour les développeurs ciblant l’écosystème Apple, les iPhones exécutant iOS et les iPad exécutant iPadOS sont les principaux appareils candidats sur lesquels déployer/distribuer des applications .NET MAUI. Les simulateurs d’appareils Apple ont parcouru un long chemin, mais rien ne vaut tester une application sur du matériel réel. Cela nécessite toutefois de comprendre l’écosystème des appareils Apple et de surmonter certains obstacles habituels. Un article récent de un développeur blasé exploré les nombreux nuances, mythes et obstacles au déploiement d’appareils Apple modernes et à la distribution d’applications.

Bien que tout soit bien documenté, les développeurs doivent comprendre le fonctionnement de base du déploiement/distribution Apple : cela comprend plusieurs étapes impliquant la signature de certificats, d’appareils de confiance et de profils de provisionnement. Connaître toutes les nuances peut devenir écrasant et cela peut aider à tirer des leçons de l’expérience d’un autre développeur, c’est-à-dire une liste de contrôle des points d’échec et des solutions de contournement courantes.

L’objectif final est de voir la nouvelle application .NET MAUI fonctionner sur les appareils iOS/iPadOS, pour devenir la dernière fleur du jardin clos d’Apple, qu’il s’agisse d’une application destinée à l’App Store ou distribuée en interne au sein d’une entreprise. Avec de la patience et de la compréhension, les développeurs peuvent facilement déployer/distribuer des applications .NET MAUI sur les appareils Apple. Il y a un véritable zen de développeur pour voir que son code s’exécute parfaitement sur un appareil.

une photo sexy d'un Macbook avec d'autres appareils également, tablettes et téléphones

Navigation Blazor dans .NET MAUI

.NET MAUI est carrément destiné aux développeurs pour créer des applications mobiles/de bureau natives. Cependant, armé de WebViews intelligentes et modernes, .NET MAUI est plus que capable d’accueillir du contenu Web dans son pays natal. En fait, les développeurs Blazor/JavaScript devraient se sentir habilités à apporter des composants d’interface utilisateur Web, du routage, du style et bien plus encore aux applications .NET MAUI multiplateformes natives, tout en obtenant un accès complet à l’API de la plate-forme native.

Jeff Fritz a une tonne d’expérience dans la création d’applications Web modernes depuis des années, mais il essaie maintenant de porter son application Web TagzApp pour qu’elle s’exécute en tant qu’application de bureau native avec .NET MAUI. Jeff a rédigé ses idées en intégrant le code Blazor aux applications de bureau :Navigation Blazor avec les composants .NET MAUI.

Jeff souhaitait une barre de menus de bureau native dans son application .NET MAUI, mais les éléments de la barre de menus devraient piloter la navigation pour ses composants/pages Blazor sans avoir besoin de lancer de nouveaux composants WebView à chaque fois. Ce n’est pas si facile que ça en a l’air. Jeff a commencé avec le modèle Blazor Hybrid par défaut et a injecté un BlazorWebView directement dans le shell .NET MAUI.

Avec un composant MenuBar ajouté pour la navigation dans les pages Blazor, l’astuce consistait à connecter un service NavigationManager et à utiliser l’injection de dépendances pour le transmettre aux modèles d’application Blazor et .NET MAUI. Avec une simple instruction Switch, les clics sur l’élément MenuBar peuvent désormais contrôler la navigation entre les pages/composants Blazor, sans avoir besoin d’instancier de nouveaux composants BlazorWebView. Merci pour l’inspiration nécessaire à la réutilisation du code, Jeff, et meilleurs vœux pour votre parcours avec l’application native .NET MAUI.

Jeff Fritz - Blazor Navigation avec les composants .NET MAUI

Déploiements hybrides Blazor

.NET MAUI est conçu pour permettre aux développeurs .NET de créer des applications multiplateformes pour Android, iOS, macOS et Windows, avec des intégrations natives approfondies, une interface utilisateur native de plate-forme et des expériences hybrides qui étendent la portée des technologies d’interface utilisateur Web Blazor/JS. Les développeurs qui créent des applications de bureau modernes avec .NET MAUI doivent réfléchir à la manière de déployer/distribuer des applications sur les machines des utilisateurs. De loin, le processus de déploiement le plus courant pour les applications Windows consiste à utiliser la création automatique de packages MSIX. Cependant, certains défis peuvent survenir pour les développeurs qui souhaitent s’écarter et peut-être déployer l’application vers un emplacement de leur choix. Heureusement, l’esprit expert de Vendeurs Mitchellqui a écrit un article—déploiement de l’application .NET MAUI Blazor Hybrid dans le dossier Windows ProgramFiles.

Mitchel avait un besoin particulier de déployer une application Blazor Hybrid .NET MAUI sous la forme d’un simple EXE : elle devrait se trouver dans C:\Program Files pour Windows afin de transmettre les paramètres de lancement à l’application. Bien qu’une application .NET MAUI ou Blazor Hybrid puisse être facilement empaquetée pour produire un fichier EXE, des problèmes surviennent lors de la tentative de déploiement dans des dossiers sécurisés pour les cibles de bureau : les applications restent bloquées sur l’écran de démarrage sans aucune erreur visible. La cause première de ce problème est que, par défaut, les applications .NET MAUI Blazor Hybrid créent un dossier WebView2 dans le répertoire de l’application pour le stockage de fichiers temporaires, ce qui peut ne pas être autorisé par le système d’exploitation pour les emplacements sécurisés.

Mitchel propose une solution simple et efficace : les développeurs peuvent remplacer l’emplacement de stockage en définissant la variable d’environnement WEBVIEW2.UTILISATEURDATA_FOLDER vers un emplacement auquel l’application aurait accès. Mitchel montre comment y parvenir avec une directive de compilateur pour les cibles Windows et trois lignes de code à l’intérieur de MauiProgram.cs dans la méthode CreateMauiApp – c’est simple. À mesure que les développeurs créent davantage d’applications de bureau réelles avec .NET MAUI, des conseils comme celui-ci sont précieux pour contourner les obstacles et disposer de stratégies de déploiement flexibles. Merci, Mitchel.

Code MAUI de l'environnement

Style Web pour .NET MAUI

Les applications mobiles/de bureau modernes s’efforcent souvent d’offrir une expérience utilisateur agréable et une interface utilisateur magnifiquement conçue est un moyen pour les développeurs d’atteindre cet objectif. Mais que se passe-t-il si vous travaillez avec des développeurs et des concepteurs Web : les styles peuvent-ils être partagés entre les applications .NET MAUI ? Kathryn Grayson Nanz est un expert React avec une esthétique de conception forte et a rejoint un développeur vieillissant pour partager ses expériences sur quelques récents salons de développement .NET :styliser les applications natives avec CSS et apporter les styles ThemeBuilder aux applications natives.

Alors que pour un public de niche, le style des arborescences visuelles XAML dans les applications .NET MAUI avec CSS est une option depuis un certain temps déjà, cela permet le partage de styles entre les applications Web/natives. Bien qu’il existe des limites, les bases fonctionnent et il existe même des paradigmes de style CSS spécifiques à .NET MAUI.

Mais que se passe-t-il si des systèmes de conception plus larges sont impliqués ? Kathryn a présenté ThemeBuilder, le mécanisme de thème d’interface utilisateur riche en fonctionnalités pour les applications Web, en particulier si vous utilisez les composants Web Telerik et Kendo UI. Les styles des systèmes de conception peuvent inclure de nombreux éléments, mais les flux de travail de conception/développement deviennent plus faciles grâce aux exportations haute fidélité. Et les mêmes styles CSS importés de ThemeBuilder peuvent être utilisés tout aussi facilement pour les applications Blazor Hybrid .NET MAUI. CSS peut styliser l’interface utilisateur Web de manière naturelle, simplement intégré dans des applications mobiles/de bureau natives. Les frameworks et outils modernes permettent le partage de styles Web dans des applications natives : productivité des développeurs et partage de code pour la victoire.

Salon des développeurs .NET - Sam Basu et Kathryn Grayson Nanz

C’est tout pour le moment.

Nous vous reverrons la semaine prochaine avec un contenu encore plus impressionnant concernant .NET MAUI.

Bravo les développeurs !






Source link