|
|
|
|
|
La WWDC est la grande messe annuelle d'Apple destinée aux développeurs de son écosystème. Aucun nouveau produit n'a été annoncé, mais tous les systèmes ont vu leur nouvelle version dévoilée : iOS, iPadOS, macOS, tvOS et watchOS.
Il serait impossible de lister l'intégralité des nouveautés - et vous les connaissez probablement déjà, mais voici plusieurs articles listant les fonctionnalités qui n'ont pas été évoquées pendant le keynote : lien 1, lien 2, lien 3, lien 4 et lien 5.
⚠️En parallèle, les Human Interface Guidelines ont été mises à jour pour supporter les nouvelles fonctionnalités. Certaines apparaîtront "auto-magiquement" dans les prochaines versions des Widgets Cupertino, mais d'autres seront à implémenter par vous même !
|
|
|
|
|
|
En parallèle, Google a essayé de faire parler de lui, en produisant une nouvelle version bêta pour Android. Il s'agit essentiellement de nouveautés côté utilisateurs :
- plutôt qu'avoir deux switch pour activer le WiFi et les données mobiles, ils sont désormais regroupés en un item "Internet"
- la copie d'informations depuis le presse-papiers affiche maintenant une notification (comme sur iOS)
- la possibilité de désactiver rapidement l'accès au micro et à la caméra depuis les paramètres rapides
- un dashboard permettant d'avoir une meilleure visibilité sur ce que vos applications consomment comme données
Enfin n'hésitez pas à lire ce thread Twitter qui recense les différentes nouveautés de manière visuelle.
|
|
|
|
|
|
Quelques minutes avant que le keynote de la WWDC ne commence, Apple a mis à jour ses règles concernant l'App Store (voici un diff complet). Les changements concernent essentiellement les développeurs malintentionnés, qui pourront maintenant avoir la possibilité de se justifier après avoir mis en place les correctifs. Ils concernent également les services qui se font passer pour des applications de dating, alors qu'ils ont trait à de la pornographie ou de la prostitution. La manipulation des avis utilisateurs est également sur la sellette…
⚠️ Mais on peut noter un passage qui nous concernera tous (section 5.1.1) : Si votre application propose la création de compte, vous devez aussi proposer la suppression du compte dans l'application.
|
|
|
|
⏫ Petite mise à jour pour les Flutter Dev Tools vers la version 2.3.3. On peut noter l'ajout de l'auto-complétion dans l'évaluateur de la console de debug.
|
|
⏫ Une nouvelle version stable de Flutter est disponible et corrige des bugs sur Dart (2.13.3) & Flutter (2.2.2).
|
|
☠️ Suite à l'abandon du WebSQL il y a plusieurs années déjà, les APIs relatives dans dart:html vont être dépréciées sur Dart 2.14, avant d'être complètement supprimées ultérieurement.
|
|
☠️ Cette fois-ci côté Flutter, depuis la version 1.13, de nombreux éléments relatifs à Material étaient dépréciés (ex : le style title sur le texte) et seront complètement supprimés dans la prochaine version stable. Pensez à faire la migration !
|
|
✨ Côté Pull Requests Flutter : sur Flutter Web, lorsque vous cliquez en dehors d'un champ, il perd maintenant son focus (issue #32433), les DevTools vont être enrichis avec des nouvelles statistiques (PR #83972) et le Widget ExpansionTile va désormais disposer d'un nouvel attribut controlAffinity pour savoir où positionner la flèche (PR #80360)
|
|
📚 Un nouveau livre (en anglais) sur Flutter vient de sortir, dont certains Googlers ont participé à la rédaction : Flutter Apprentice. Il notamment disponible sur Amazon France.
|
|
😃 Aujourd'hui le DartPad ne supporte pas l'importation de packages. Mais bonne nouvelle, Google travaille bien sur cette possibilité et plusieurs ingénieurs sont déjà à l'oeuvre. Dans un premier temps les packages de Firebase seront privilégiés, avant d'offrir une compatibilité plus large. Ne soyez pas pressés pour autant, car il est question de plusieurs mois !
|
|
🎵 Vous pouvez maintenant intégrer Shazam (racheté par Apple) dans vos applications, grâce à ShazamKit qui est compatible iOS 15… et Android 6 !
|
|
🔍 9to5Google s'est amusé à comparer les performances du Nest Hub entre CastOS et Fuchsia. Verdict les résultats sont quasi-similaires entre les deux, tout en sachant que Fuchsia se veut être un système plus ouvert et non pas uniquement dédié aux enceintes connectées.
|
|
🔍 Nous n'utilisons pas beaucoup XCode sur Flutter, mais on peut noter que la prochaine version (13) proposera le support des raccourcis "à la Vim". Pourquoi pas… mais plus sérieusement, si vous voulez découvrir toutes les nouveautés de XCode, une vidéo de 40 min est nécessaire !
|
|
🛡️ La force d'iOS est d'avoir une majorité du parc qui bascule rapidement vers la nouvelle version. Cela pourrait changer car Apple ne va plus contrainte les utilisateurs et continuer à maintenir l'ancienne version avec des patchs de sécurité (uniquement).
|
|
|
L'astuce
|
Connaissez-vous vraiment la commande pub cache ?
|
|
|
|
|
Ajouter la dernière version d'une bibliothèque dans son cache local
|
flutter pub cache add
|
|
|
|
|
Ajouter toutes les versions d'une bibliothèque dans son cache local
|
flutter pub cache add --all
|
|
|
|
|
Vérifier s'il existe en local des nouvelles versions pour les bibliothèques
|
flutter pub upgrade --offline
|
|
|
|
|
Les articles et tutoriaux Flutter
|
|
|
|
Si votre utilisateur a un champ à remplir et que vous souhaitez lui proposer des suggestions, le Widget Autocomplete est alors celui qu'il vous faut utiliser.
|
|
|
|
|
|
Lorsqu'il s'agit de traduire une application, il existe pléthore de solutions dont notamment celle de Google via Intl. Le format des fichiers ARB n'est toutefois pas des plus simples à appréhender. Jaumard, un développeur français, a créé sa solution qui utilise build_runner pour faciliter la vie et notamment gérer les variantes (dev, prod…) de votre application.
|
|
|
|
|
|
Saviez-vous que Flutter Web a deux moteurs de rendu ? Un premier basé sur HTML et un second appelé CanvasKit. L'un comme l'autre ont leurs avantages et leurs inconvénients. Cet article vous les expose, pour que vous puissiez déterminer le meilleur pour votre usage.
|
|
|
|
|
|
Vous avez peut-être entendu parler de GetX comme étant une solution de state management. Cet article vous explique les bases de son intégration dans une application Flutter.
|
|
|
|
|
|
Vous avez besoin de faire payer vos utilisateurs pour des biens physiques ? Vous n'êtes pas obligés de passer par les solutions d'Apple ou Google, et Stripe est l'une des meilleures en la matière. La communauté Flutter a créé son propre plugin qui fonctionne sur iOS et Android et supporte même Apple Pay & Google Pay. Cet article vous explique comment l'intégrer.
|
|
|
|
|
|
Après les articles sur Rust ou Javascript, Dart:ffi permet aussi d'intégrer du code initialement écrit en Go. Cet article vous explique comment mettre en place un mécanisme de communication entre les deux entités.
|
|
|
|
|
|
Jetbrains, l'éditeur de l'IDE IntelliJ Idea, pour lequel Google propose un plugin Flutter a mis en ligne tout un tas de trucs & astuces pour en améliorer les performances. Shared indexes, LightEdit mode… ce ne sont pas les fonctionnalités qui manquent, mais la plupart sont méconnues. Cet IDE souvent reconnu comme lourd, face à Visual Studio Code, pourrait vous convaincre de l'inverse !
|
|
|
|
|
|
Microsoft Coffee : est-ce le nouveau nom d'un produit de la firme de Redmond ? Oui et non, ce "produit" lancé il y a 25 ans était en réalité un poisson d'avril mis en place par certains employés.
Mais le Microsoft Coffee s'est rapidement transformé en un cauchemar pour ses initiateurs, car ils avaient déployé des boîtes avec ce faux produit dans de nombreuses enseignes, autour du siège social de la société. Sauf que le public a pris cela au pied de la lettre, faisant même la une des journaux télévisés.
Si vous voulez en savoir plus sur l'histoire, un article Medium vous explique cela en détail. Très instructif !
|
|
|
|
|
|
|
|
Il existe un repo sur GitHub qui permet de soumettre les tests de VOTRE application afin de détecter si après un changement d'API dans Flutter votre projet "casse". Une bonne initiative de la part de Google, qui vous permet d'anticiper les futures modifications.
|
|
|
|
|
|
|