概要
どうも、@daiki1003です!さぁ、待ちに待った3.19が来ましたね〜!
本記事では何が新しくリリースされたのか簡単にまとめていきたいのでよろしくお願いします!
それでは早速行ってみましょー!
Flutter/Framework
スクロール
とうとう来てしまいました…。Flutter界隈で有名なあの方法が使えなくなってしまいます。
今手元で動いているアプリがFlutterなのかどうなのか?
「二本指でスクロールしてスクロール速度が2倍になるかどうか?」
でわかるという方法が使えなくなります…!
MultiTouchDragStrategy.latestPointerによって、デフォルトの挙動を変えることができるそうです。
詳しくはこちら。


また、二次元スクロールやSingleChildScrollViewなどの挙動も改善されている様です。
アニメーション
MaterialApp, ExpansionTileなどなどデフォルトのアニメーションのカーブや秒数などをoverrideするための、AnimationStyleウィジェットが追加されました。
SegmentedButton.styleFrom
他のボタンと同様に SegmentedButtonにもstyleFromメソッドが追加されました。
Switch.adaptive
メソッドを使うことでAndroid/iOSそれぞれの見た目に適応したコンポーネントを表示できていました。
ですが、内部実装的にはcupertinoライブラリのCupertinoSwitchに依存していました。
その依存関係がなくなったそうです!
Semantics
あまりここは明るくないのですが。SemanticsProperties識別子が追加されたそうです!
TextFieldが、MaterialStatesControllerをサポートし、MaterialStateの変更を検知する事ができる様になりました!
UndoHistoryバグ修正
日本語キーボードでUndoHistoryのundo/redo履歴が消えることがある問題が修正されました。
日本人による修正かなと思ったらやはりそうでした!
Flutter/Engine
Impeller
ほぼ全てのAndroidでImpellerが正常に動作する様になりました!
また、シェーダの特殊化定数をサポートしたり、backdrop filterやblurのパフォーマンスが向上したそうです!
描画の複雑度にもよるが20〜70%くらいの改善がされたとのこと!
GPU tracing
Debug/Profileビルド時にGPUTracerという項目が追加されました!
Apple系デバイスとVulkanが使われているAndroidデバイスのみです。
VSCodeのFlutterサイドバーで現在有効になっていないプラットフォームを追加する機能が有効になり、またDevToolsサイドバーで外部ブラウザでDevToolsが開ける様になりました!
Desktop
Windows Arm64サポート
Arm64
に対応し、対応端末でよりパフォーマンスが出る様になったそうです!
そしてまた鋭意開発中とのこと。
Dart
Glyph
どうやら絵文字ともうちょっと向き合える時間が来たのかもしれない?dart:uiのParagraphにGlyphInfoというクラスを返してくれるメソッドが生えた様です。
iOS
とうとう、フォントがAppleっぽくなります!
画面の大小によってフォントの出し分けを出来ていなかったのが修正された様です。
privacy manifest
春以降に申請する際に、必須となったprivacy manifestを含んだそうです。
Android
Deeplinkバリデーター
僕も経験ありますが、deeplinkの実装にはAndroidManifestをいじる必要がありますが、変更が終わった後に、これで実際に上手くいくのかに自信が持てません笑
今回のアップデートで、DevToolsにDeep Linksタブが追加され、実装ガイドもしてくれるそうです!
すご!
今回はwebによるAndroidのみが対応ですが、今後webによるiOSやapp内での両プラットフォームへの対応も予定しているそうです!
Share.invoke
Textを範囲選択した際に出てくるShareコンテキストメニューが追加されました!
その他にも、各OSでコンテキストメニューが足りてないのでその拡充に動いているそうです。
Texture Layer Hybrid Composition(TLHC)
Google Mapsとテキスト拡大鏡をTLHCモードで動く様になりました。
簡単に言うと、パフォーマンスが良くなったよと言うことです。
テキスト選択ツールバー
カスタマイズできる様になっており、TextFieldもそのカスタマイズされたものを参照している様です。
AI関連
Gemini SDK beta
やっぱり、来ましたね!


こちらのパッケージも新しく追加されました。
とはいえ、まだ0.2.0ではありますね。
すぐにでも始めたい方はこちらから。




Deprecation
Windows7 and 8
Flutter3.19、Dart3.3からWindows7, 8のサポートを終了するそうです。
Impeller ditheringフラグ
Paint.enableDitheringが削除されます。
iOS11
iOS11のサポートも終了するそうです。
十分ではありますが、Androidと比べて、iOSのサポートはわりかし短めですね笑
最後に
個人的には、地味にiOSのフォントが嬉しかったりGeminiが楽しみだったり、Deeplinkバリデータが嬉しかったりします。
今後もFlutterのアップデートが楽しみですね!
Twitterフォローお願いします
「次回以降も記事を読んでみたい!」「この辺分からなかったから質問したい!」
そんな時は、是非Twitter (@daiki1003)やInstagram (@ashdik_flutter)のフォローお願いします♪
Twitterコミュニティ参加お願いします
Twitterコミュニティ「Flutter lovers」を開設しました!参加お待ちしております😁
☕️ Buy me a coffee
また、記事がとても役に立ったと思う人はコーヒーを奢っていただけると非常に嬉しいです!




コメント