Flutterアプリのコードレビューや簡易確認のために、毎回ビルドして実機確認するのは手間です。本セッションでは、GitHub ActionsとFirebase Hostingを使い、PRに「/preview」とコメントするだけでWebプレビューが自動生成される仕組みを紹介します。
MVVM Clean Architectureで作られたFlutterアプリに、Atomic Design Patternを組み合わせてみた実例を紹介します。
既存のUiStateやPage、Actionなどの構成に、どうやってAtomやMoleculeといった考え方を落とし込んだのかを具体的に解説。
再利用性や保守性がどう変わったのか、逆に設計が複雑になって困った点など、リアルな経験も共有します。
毎日何気なく利用するSuicaやPASMO。そのICカードに記録されている乗車履歴を、ご自身のAndroidスマートフォンで読み解いてみませんか?
FlutterフレームワークとNFC機能を使って、スマートフォンでICカードリーダーとして活用する方法を解説します。
FeliCaカードから読み取った情報を、「見える化」するまでの一連の技術を伝えたいと思います!
NFCで「何か面白いこと」を見つけたいFlutter開発者
本セッションでは、Flutterアプリにオフラインで動作する全文検索(Full Text Search)機能を組み込むために開発したパッケージと、その中で活用した flutter_rust_bridge の実装事例を紹介します。 学習コストが高いとされる flutter_rust_bridge をFlutter開発者がどのように扱えるのかを、具体的なコード例とともにわかりやすく解説します。 さらに、CJK(中日韓文字)への対応や、マルチプラットフォーム対応した話についても共有します。
概要
This talk shows how functional programming—pure functions, immutability, higher-order functions—can boost Flutter app performance. For experienced Flutter developers, it offers practical examples to improve code readability, maintainability, and testability.
想定視聴者
Experienced Flutter developers seeking to apply functional programming to write maintainable, testable, and efficient code.
Flutterによるスマートフォンアプリの開発・運用を進めている中で、FireTVやAppleTVなどのテレビデバイス対応が新たに求められるケースがあります。
テレビ特有のリモコン操作や各デバイス向けUI実装にはFlutterでは多くの工数が必要で、さらにFireTVやAppleTVはFlutterが公式にサポートしていないため、開発は至難の業です。そこで既存のFlutterアプリのビジネスロジックをKMPに移行し、テレビデバイスのUIはネイティブコードで構築することで、効率的かつ保守性の高いテレビデバイス展開が可能となります。
本セッションでは、Flutterによるテレビデバイス開発の現状とFlutter × KMPによるテレビデバイス展開戦略について解説します。
アプリの第一印象を左右するスプラッシュ画面。
flutter_native_splash パッケージを使えば数分で簡単に設定できる...と私も最初は考えていました。
ですが、Android特有の"ある挙動"を知らず、思わぬところで何時間も悩むことになりました。
本LTでは、スプラッシュ画面実装時にAndroidアプリで直面した予想外の挙動の原因と、
その背景にあるAndroid独自の特性、そして対処法について、
自身の経験を交えながら分かりやすく解説します。
GoRouterはお馴染みのルーティングパッケージですが、複雑な構成になると設計や実装で見落としがちな落とし穴に直面することもあります。本セッションでは、GoRouter活用時によく遭遇する課題や設計ミスとその解決策を紹介し、より正しく柔軟に使いこなすためのヒントをお届けします。
本セッションでは以下の内容を中心に解説します:
GoRouterをより柔軟かつ効果的に活用したいFlutter開発者
Server-Driven UIでプロダクト開発してますか?
Server-Driven UI(SDUI)はAirbnbが用いた設計手法でUIの構造、レイアウト、さらには一部の動作ロジックを、クライアント側ではなくサーバー側で定義・制御するアーキテクチャパターンです。
モバイルアプリ開発においてA/Bテスト等でUIを分ける際にいくつかやり方があるかと思いますが、
このLTではStacというFlutter専用のSDUIのFrameworkを用いた紹介をします。
Flutter 3.27.0 がリリースされ、 Android においても Impeller が標準となりました。
我々はAndroid のパフォーマンス向上を期待し、 Flutter をアップグレードすることに決めました。
手元の端末たちでは問題なく動作したため、アプリをリリースしました。
気がつくと、ユーザー様からクレームをたくさん頂くことになりました。
このセッションでは、失敗した経緯をみなさんと笑顔で振り返り、今後の糧とさせていただきます。
AWS Amplify をご存知でしょうか?
認証やデータベース、ストレージ機能といったものを手軽にモバイルアプリに実装できる、 AWS のサービスです。
我々のプロダクトでは、EC内のバナー表示制御のために導入しています。
これを実現したことで、複数箇所のバナー出稿を非エンジニアの運営メンバーのみでコントロールできるようになりました。
このセッションでは、 AWS Amplify と Flutter での実装方法の概要に触れ、我々のプロダクトの中でどのように利用しているかをお話しし、 Flutter アプリにも簡単に導入できる AWS Amplify の魅力をお伝えしたいと思います。
Flutterアプリのグローバル化対応、.arbファイルのキー分割やコードへのタグ埋め込みに悩んでいませんか?それは標準的な手法が持つ限界のサインかもしれません。グローバルアプリには、単純なキー値置換では乗り越えられない「語順」と「リッチテキスト」という大きな壁が存在します。
言語ごとに異なる文の構造、あるいは「利用規約に同意する」のような部分的なスタイル適用。これらに無理やり対応しようとすると、翻訳テキストは分断され、メンテナンスコストとヒューマンエラーを増大させます。
本トークでは、これらの課題をスマートに解決する「CSV主導」のグローバル化アーキテクチャを提案します。非技術者である翻訳者との協業を円滑にし、真にスケーラブルなグローバル化を実現しましょう。
このセッションでは、Flutterアプリを今すぐ改善できるTipsを5分で一気に紹介します。
テーマはパフォーマンス、UX、フォーム、アニメーション、画像、権限など幅広くカバー。
たとえば:
•起動時のカクつきを deferFirstFrame() で防止
•iOS絵文字の正しい表示方法
•SVGの事前コンパイルで描画高速化
•findChildIndexCallback による無駄な再構築防止
•textInputAction + onFieldSubmitted() でフォーム操作を快適に
すべて、誰でもすぐに試せる実践的な内容です。
想定視聴者
•Flutter歴問わず、すぐ使えるTipsを知りたい方
•短時間でUXやパフォーマンスを改善したい開発者
•小技・改善ネタが好きなFlutterエンジニア
Flutterの新レンダラー「Impeller」で3D描画が可能な flutter_sceneデモが登場してしばらく経ちますが、まだ活用例は多くありません。
私も試す中でセットアップに苦労しましたが、その可能性に惹かれ最新Flutterで動作するよう修正し、通常のアプリに統合する方法も見つけました
このセッションではその知見を共有し、3D表現に挑戦する開発者のきっかけになればと思います
•flutter_scene の仕組みと導入手順
•UIに3Dを活かす実用的アイデア(ゲーム以外も)
想定視聴者
•Flutterで表現力豊かなUIを実現したいと考えている開発者
•3D表現に興味があるが、どう取り入れて良いかわからないFlutterエンジニア
•flutter_scene や Impeller に興味を持っている中級者以上の方
•実際に動くデモを通してFlutterの可能性を広げたい方
Fragment Shaderは、ピクセル単位で色や効果を自在に制御できる技術で、Flutterでも通常のウィジェットでは実現できないリッチな表現が可能になります。FlutterでShaderを使えば、ユーザーを驚かせるような視覚体験を実現でき、アプリのデザインを“賞が取れる”レベルに引き上げることができます。
このセッションでは以下を紹介します:
•FlutterでのFragment Shaderの基本と使い方
•アプリ組み込みのユースケースと活用例
•Flutter内部でのShader利用とAndroidでのバグ修正事例
•カスタムShaderの入手法と応用テクニック
想定視聴者•Flutterでより高度な表現を目指す開発者
•UI演出にこだわりたいデザイナー/エンジニア
•Shaderに興味はあるが手を出せていない方
•内部実装に関心のある中級以上のFlutterエンジニア
2025/6/9、Appleは新たなデザイン言語であるLiquid Glassを発表しました。
そしてコミュニティから挙がった声は……
「Flutterはこのムーブメントについていけない、終わりだ!」「Flutter is dead.」 ……
なるほど、確かにFlutterは構造上、Liquid Glassを取り込むことは難しいです。
では、Flutterは本当に死を迎えたのでしょうか?
自分はそうは思いません。
むしろ、Flutterの真価はプラットフォーム固有の事情に左右されないことにあると考えています。
このトークでは、Flutterの立ち位置や採用する価値を整理したうえで、どのようなプロジェクトにFlutterが最適なのか?というお話をします。
世界にはおよそ100種類以上のバーコードの規格が存在すると言われています。
その中でアプリに適したバーコードを正しく読み取ることは、バーコードリーダー機能を持つアプリにとって根幹ともいえる重要な要素です。
読み取りに失敗すれば、それだけでアプリとして成立しないケースも珍しくありません。
そのためには、アプリの目的や想定される利用シーンに応じて、適切なバーコード形式を理解し、それに合ったパッケージを選定することが非常に重要です。
このセッションでは、Flutterで利用できる様々なバーコード読み取りパッケージを比較しながら、
用途ごとに「どのパッケージが適しているのか?」という観点で、選定のポイントや実装時の工夫について具体例を交えてご紹介します。
・バーコードの読み取りの実装をしている又は考えている方
iOS 17で登場した「Assistive Access」機能をご存知ですか?
一見するとFlutter開発者には無縁に思えるかもしれませんが、実はこの機能には認知にやさしいUI設計における多くのヒントが詰まっています。
本LTでは、Assistive Accessの概要とともに、Flutterアプリでも活かせる認知負荷を軽減するためのデザイン原則を紹介します。
特に、「ボタンはたくさんあったほうが便利」や「多機能こそユーザーフレンドリー」といった常識に疑問を投げかけ、誰にとってもわかりやすく、操作しやすいUIを考えるきっかけとなるセッションを目指します。
認知負荷の視点から、自分のアプリ設計を見直してみませんか?
私はライブ配信アプリの実装しています。想像の通りライブ配信アプリは視聴や配信機能に加え、様々な機能があるため、実装やパフォーマンス面の調整の難易度が高いです。
私たちはこのアプリをFlutterで実装したことで、想像以上に多くの課題にも直面しました。加えてライブ配信の仕組みは外部のネイティブSDKに依存しているので、ネイティブ連携も必要でした。
このトークではこのライブ配信アプリの視聴や配信機能の実装での知見や直面した課題を共有します。また最近取り組んでいるパフォーマンス改善についても紹介します。
1 視聴や配信の仕組み
2.動画プレイヤーでのPlatformViewやTexture Widgetの活用
3.パフォーマンス改善やその計測方法
「アプリ開発において、リリース後に深刻な不具合が発覚し、アプリの一部又は全体が正常に動作しなくなってしまう。」
そんな経験はありませんか?
私自身、個人開発しているアプリで最新版に不具合が含まれたままリリースしてしまい、結果として一部のユーザーがアプリを使えない状態に陥ってしまったことがありました。
このような事態を未然に防ぐ手段として有効なのが強制アップデートの仕組みです。
強制アップデートは、ユーザーに最新バージョンの導入を促すだけでなく、アプリと開発者自身を守る安全装置としても重要な役割があります。
このセッションでは、個人開発者として実際に直面した強制アップデートを実装していなかったことによるトラブルやそこから得られた教訓、導入した仕組み、バージョン管理の考え方まで、実践的な視点でお話しします。