|
Open the newsletter in your browser |
|
|
|
|
💙️ Support-me 💙️ |
|
|
|
|
|
|
|
|
|
|
Android applications make their first steps on Windows 11 The support of Android applications was announced with great fanfare at the unveiling of Windows 11. Unfortunately, on the first public version of its operating system, Microsoft did not include this feature.
Nevertheless, the good news is the latest build sent to Insiders now offers this feature , while adding the Amazon Appstore to the Microsoft Store. This makes it possible to install applications in a dedicated virtual machine, which runs on Android 11, either through the Amazon store or directly by sideloading APKs.
However, Microsoft stops supporting UWP applications Today when you want to design a Flutter application for Windows, you can choose between Win32 and UWP (Universal Windows Platform). The second option is the most interesting on paper, since it offers compatibility with Xbox consoles, as well as the Hololens headset.
Unfortunately, last week, Microsoft announced that it was backing off and putting the brakes on UWP, stopping its development, but continuing to support it. Concretely, if you start a new development, you'll have to use the Windows App SDK (with WinUI 3.0 and .NET 5). Otherwise, you can continue with UWP, but with WinUI 2.x and .NET Core 3.1. The end of support for the technology has not been specified. |
|
|
|
|
|
Before the Epic Games company came and shook things up, Apple and Google were not worried about their practices on the App Store and Google Play with the famous 30% commissions. But since then, pressure has been mounting, both from developers and from legal authorities in many countries.
A first drop at Google Historically, the Google Play took a 30% commission on application purchases and in-app payments. Without wanting to lose too much face, this year Google has introduced a reduction of about 15% for sales under $1m. Once the threshold is crossed, the rate goes back up to 30%.
Implemented as of July , this measure is however ambiguous, because it is done on a prorated basis: July = 6 months = 500,000 dollars. Moreover, the calculation is made in dollars and not in the developer's currency.
A second drop Unexpectedly, Google announced last Thursday their decision to extend this measure to subscriptions. Currently, the first year was charged 30% before dropping to 15%. But as the retention rate was generally low, few publishers benefited from this. From now on, all subscriptions will have a 15% flat rate.
An additional discount for streaming services and the purchase of digital books An exception is made for all applications offering the purchase of ebooks, namely of the music streaming service type (Spotify, YouTube Music…). For any subscription, the commission will be reduced to 10% so that the redistribution of the generated income to the artists is more consistent. |
|
|
Miscellaneous news in brief |
|
|
⏫ A new version of Flutter is available on the beta channel: 2.7.0-3.0-pre |
|
|
The creation of this newsletter takes me several hours each week. You want to support the project and allow it to last in time? For that, you can donate from 1 euro on Patreon!
|
Support-me on Patreon
|
📅 We had lost hope by then, but conferences are starting to come back in "physical" mode. Flutter Vikings will thus take place on February 2 and 3 in Oslo. The "early bird" ticket for both days costs NOK 2,500 (that's a ~€250 discount), but if you prefer to watch it online, it will be completely free! |
|
✨ On the Pull Requests Flutter side, we can note:
- On Android, the dex classes file can only accommodate 65536 methods. This number can easily be exceeded if you use a large number of dependencies or if your project gets bigger. In this case you have to activate the Multidex which allows you to have several dex classes files in parallel. On Flutter, the tools will now be smart and detect this scenario automatically, in which case, they will ask you to activate it (PR #90944 )
- Flutter is getting ready to support Android 12, now setting the "targetVersion" to 31 (PR #91719 ])
- On the Dismissible , a callback is added to notify you if a specified threshold is reached (PR #88736 )
- A TooltipVisibility widget will be added to allow you to block or not the display of children Tooltips (PR #88736 )
- On Flutter Web, you will be able to specify the URL where CanvasKit should be downloaded (PR #70101 )
|
|
🔁 The moor package (ORM based on SQLite) has been renamed to drift . Practically, nothing changes, but the old name could have a pejorative connotation in some languages. |
|
🔥 From October 29 to 31, Flame, the engine for creating games in Flutter will launch a GameJam . As for the conference that took place last week, it is already available in replay . And if you do not know this tool's possibilities, do not hesitate to look at this site , which shows some examples of implementation. |
|
🍎 Some Apple announcements:
- 📖 App Store rules have just been updated to validate that developers can retrieve users' names and emails to communicate with them live.
- 🛍️ On the App Store, you can now add events specific to your app (e.g., a temporary promotion). Users will then be able to see it on the app store. An interesting initiative, but it remains to be seen how the selection will be done…
- 🫖 Apple relaunches its Tech Talks : the possibility to make an appointment with an Apple engineer to ask your questions about development.
|
|
🤖 Some Android announcements:
- 😂 Android 12 is officially available on Pixel phones, which makes you wonder what the false start in early October was all about. By the way, here is the list of new emojis on this platform.
- 📱There are whispers that Android 12.1 would bring improvements for foldable screens. This version could be available in beta as early as December, as suggested by the current Android beta program .
- 📅 The Android Dev Summit , a two-day conference, is being held on October 27 and 28. The program] is already available.
- 🛡️ In February 2022, all apps will have to explain how user data is collected and then processed. To avoid bottlenecking, you can start providing this information .
|
|
🔖 Google just launched the Dev Library , a new tool that hosts links to opensource projects and tutorials related to its own tools. Thus, we find sections for Android Angular, Firebase… or even Flutter. In terms of content, a selection process is in place to ensure quality. |
|
📣 Firebase App Distribution allows to easily give test versions of your applications. In preparation for a future release, you can send an email to firebase-app-distribution-team@google.com to get access to the new Android SDK letting you notify your users when a new version is available. |
|
💾 Thoughts are being shared around a new file system for Fuchsia dubbed Fxfs , the current one (Minfs) being considered too unscalable. |
|
🟨 Need a reminder of the different concepts in Dart? These Flash Cards will be a gold mine for you. |
| |
|
A very interesting question was asked on Reddit and Hixie. One of the historical members of the team answered it: why does Google invest in Flutter… though it is free?
"The main reason we are open source is because we forked from Chrome, which was also open source. We've found there's lots of benefits to being open source (such as many of the ones others have mentioned here).
That said, for a lot of projects, the real reason they're open source is that the people who created them are people who would only want to work on something if it was open source. For example, everything I've ever done in my career has been either open source or open standards (even when working for companies that are primarily working on closed-source stuff, all my work has always been in the open). So sometimes it may be less about a strategic decision by a company to make something open source, and more about that being the only way that certain projects will ever come to exist if they are to involve those people." |
|
|
Dart/Flutter articles and tutorials |
|
|
|
The first iPhone was only 3.5 inches, a far cry from the 6.7 of today's 13 Pro Max. At the time Steve Jobs claimed that a smaller size would allow the user to reach all areas of the screen with one hand. But, faced with the fait accompli, this article gives you some solutions to make navigation easier. |
|
|
|
|
|
If you're doing Web Flutter and calling APIs hosted on another domain, you've inevitably had the problem of CORS (for Cross-Origin Resource Sharing). But why does this system exist and more importantly how do you make sure you implement it properly? That's what this rather backend-oriented article explains. |
|
|
|
|
|
You may have noticed that methods around "microtask" or "event" are available in Dart/Flutter APIs. This article explains not only how they work, but also why they are useful. |
|
|
|
|
|
This is an article I stumbled upon, but I didn't expect such complexity. If you want to handle different browsers and platforms well, you will have to provide some file types. Feel free to read the whole article (admittedly a bit long) to discover how inconsistent this area is. |
|
|
|
|
|
Some parts of your code must be called only once (at the first initialization for example), or others, a limited number of times… The problem is that this is manual handling for each case. Thanks to the Flutter Chore library, everything is managed automatically and this article explains how to put it into practice. |
|
|
| |
|
|
|
Remove unnecessary icons |
When you use icon fonts (Material or Cupertino fonts for example), you only use a tiny part of them. Did you know that there is a --tree-shake-icons argument to pass to the flutter run/build command, in order to eliminate all the elements you don't use? Here is a way to reduce the size of your applications a bit. |
|
|
|
|
IDEs that don't work |
Does your computer login contain non-standard characters? For example, this is the case with Mikołaj , which does not work on Jetbrains IDEs. In this case, just define a custom property idea.system.path to provide an alternative. |
|
|
|
| |
|
|
|
|
|
|
|
|
|
When you start a new project, the README.md file is a must, so that other people can contribute to it. This tool makes it easy for you to create it with the different blocks you're used to finding in it. |
|
|
|
|
|
|
As far as Flutter-based No-Code tools that generate Flutter applications are concerned, it would be possible to mention several of them. Here is the latest one, which seems to be attractive on paper with the possibility to connect many backends (API directly, Airtable…). |
|
|
|
26 October |
Online |
Samsung Developer Conference |
|
27-28 October |
Online |
Android Dev Summit |
|
|
29-30 October |
Online |
Flutter Kaigi |
|
03-04 December |
Online |
Dart Up |
|
|
Your opinion on this issue |
| | | | |
|