概要
どうも、@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
また、記事がとても役に立ったと思う人はコーヒーを奢っていただけると非常に嬉しいです!
コメント