‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌   ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ ‌ 

Issue 11 (08/11/2021)

Open the newsletter in your browser


The news

Image Dart 2.15: what's new?

Just like Flutter, Dart receives regular updates to add new features. While the stable version is currently 2.14.4, the list of new features flag_lng in Dart 2.15 is already available. Here is a first salvo:

Tear-off constructors
Let's say you have the following class:
class A {
   String a;

To create a new object, you would logically specify A("A value"). Thanks to the tear-offs, you can now write :
List<String> list = ["1", "2", "3"];
for (String e in list.map(A.new)) {}

Le A.new is equivalent to calling the constructor, but without having to write the callback (String val) => A(val). Note that for named constructors, you only need to change the new to the correct name.

There are many new features: Generic type literals, Explicit generic method instantiations, Generic instantiation of function objects

It's been mentioned several times, but self-hosted Pub instances will be better managed and the syntax in the pubspec.yaml will be lighter. It will simply be necessary to add a hosted line on each dependency:
      hosted: 'https://custom-pub-server.com'
      version: ^1.2.3

When publishing a library on Pub, checks will be made to ensure private keys are not being sent.

Image In South Korea, an early look at the choice between alternative in-app payment solutions

Hands and feet tied
South Korea has always been an exception regarding in-app payments. The restriction to use only Google and Apple solutions was not enforced. In October, however, the "Land of the Calm Morning" had to fall in line and follow the rest of the world. South Koreans MPs did not approve and made sure that by the end of August the giants could never force third-party developers in such a way.

Still not happy, they are
Since last week, the bill has been definitively adopted and implemented, forcing Google and Apple to react quickly. Google says it will provide more details in the coming weeks, while Apple is indignant, citing less effective parental controls.

Google already gives an example
In a blog post flag_lng, Google reaffirms all the advantages of its solutions (Play Points, gift cards, number of users…) but laconically gives a screenshot explaining:

"In response to the recent legislation, developers will now be able to add an alternative in-app billing system, alongside Google Play's billing system, for their mobile and tablet users in South Korea. At checkout, users will be able to choose which billing system to use".

Miscellaneous news in brief

⏫ The Flutter plugin for VS Code has been updated to version 3.28 (changelog flag_lng). In addition to some new features, we note the support of the Hot Reload for "pure Dart" projects. On the other hand, on the IntelliJ side, it is minimum service with the M61 version flag_lng.

✨ On the Pull Requests Flutter side, we can note:

  • On macOS applications, the default template will now have a "Help" menu to be in line with native applications (PR #92946 flag_lng)
  • An AppModel class is being added to easily propagate data in key/value form to child widgets. It is not intended to replace packages like Provider, but rather provide data to custom Widgets that need data that can be provided later (PR #92297 flag_lng)

🎀 After many months of work, RiverPod flag_lng, the State Management solution created by Rémi Rousselet flag_lng is now available in version 1.0. You can discover the new features of this link flag_lng.

🏥 The advantage of opensource is that you can quickly hatch an ecosystem, but this becomes problematic if the projects are no longer maintained. This is the case of the library that manages Bluetooth in Flutter (flutter_blue flag_lng), which has not given any sign of life since March. The solution for the moment seems to be to turn to this ce fork flag_lng.

🔥 Firebase App Distribution makes it easy to share Android and iOS apps with testers. An API will soon be made available to integrate this brick into your deployment workflow. The dcumentation is available here flag_lng.

🧪 TestFlight for macOS flag_lngis now available for everyone and makes it easy to deploy apps to 10,000 external testers.

🐛 On some phones on Android 12, it seems that Network Service Discovery flag_lng (a service to search for other devices on the network) is malfunctioning, malfunctioning very much flag_lng

🤖 After Android, Chrome, Firebase… Google is planning an event flag_lng dedicated to Machine Learning tomorrow! Somewhat organized on short notice…

🍾 Let's get the champagne out, the very famous Vim editor just celebrated its 20th anniversary flag_lng last week!


Did you know?

When you think of Japan 🗼 you immediately think of high-tech, but did you know that the Tokyo administration still used floppy disks? Yes, you heard right, 3.5-inch floppy disks in 2021!

In a Nikkei article (a major business daily), we learn that some of the city's districts have either started or are planning to implement the transition to more modern systems.

This old format is distinguished by its reliability: "[it has] almost never broken or lost data". But Sony, one of the suppliers of these diskettes, stopped production about ten years ago. And worse, Mizuho Bank said that from 2019 onwards, it would start charging 50,000 yen (~ €379) per month for the use of physical storage media, including floppy disks.

At the current rate, Chiyoda Ward is expected to complete its migration in 2026!

Dart/Flutter articles and tutorials

Tips & tricks

The tweet

Twitter logo
Sometimes they just appear in my house! BirdGrinning face with smiling eyes Btw, a new version of #ARKit for #flutter was released with body tracking improvements and various fixes!
Image tweet

AR Kit is the augmented reality platform developed for Apple products. Oleksandr Leushchenko, the maintainer of the arkit_flutter_plugin flag_lng shows some examples of what you can achieve and the performance is amazing!

Dart/Flutter libraries

Lib material_color_utilities

material_color_utilities : Extracting colours for Material Design 3 (M3)

Android iOS Web Linux Mac Windows

Material Design 3 was made official at the Android Dev Summit and color flag_lng has become a key part of Google's new design system. This official library enables you to easily extract colours from an image and obtain a palette. We only regret that the documentation is so minimal, but this should be corrected soon.

Lib performance

performance : The performance widget that works on the web

Android iOS Web Linux Mac Windows

The performance display widget is very useful in Flutter, as it enables you to see if your code is well optimized. Unfortunately this overlay does not work on Flutter Web. Fortunately the community has come up with this dependency to fix it!

The video

Image A live-coding of go_router (Navigator 2.0) with Chris Sells

A live-coding of go_router (Navigator 2.0) with Chris Sells

Aaah this Navigator 2.0, so much eagerly awaited and so much hated at the same time!

Chris Sells (Google), who notably created the go_router library flag_lng to simplify its use, offers a live coding with Majid Hajian (Google Developer Expert). For almost 90 minutes, they will go over how to integrate the library into an application. Very instructive!

The tools

Image Outil Buildman

Buildman : Speed up your builds

Your computer has limited resources and build times during your developments have become unmanageable? Buildman flag_lng is a new early access service that works as an Android Studio/IntelliJ plugin. Rather than launching the build locally, it is simply deported to a high-performance remote machine (4.5 GHz processor with 20 GB of memory).

Image Outil Roadmap.show

Roadmap.show : Share your roadmap with your users

To reassure your users about the future of your application, there is nothing like a little transparency. This tool allows you to share the roadmap elements you have planned for the next few weeks or months. Most importantly, it is collaborative and enables your audience to help you prioritise or share ideas. In most cases, the free version is sufficient (10,000 page views per month).

Upcoming events



Firebase Summit



Dart Up


Oslo & Online

Flutter Vikings
Your opinion on this issue