Flutter、Jetpack Compose、SwiftUIは、いずれも宣言的UIを採用したフレームワークです。これらを使えば、表現力豊かなUIを効率的に構築できますが、特にFlutterは早い段階からマルチプラットフォーム展開を第一の目標として設計されてきました。宣言的UIという共通点を持ちながらも、UIの作り方や状態の扱い方には、それぞれ独自の文化・哲学があります。それぞれのコーディングスタイルやベストプラクティスを知ることで、新たな視点を取り入れ、より良いUI実装を目指します。このセッションでは、具体的なコードを交えながら、3つのフレームワークの「書き味」の違いを体感します。
Flutterならではの利点・欠点を、他のフレームワークとの比較を通じて再確認したい人
Flutter以外でもモバイルアプリ開発のトレンドや新しい開発手法に関心がある人
「アクセシビリティ、大事なのはわかってる。だけど、どうしても後回しになってしまう」──そんな経験、ありませんか?
私たちのチームもそうでした。初期リリースでは対応できておらず、今も完璧ではありません。
このセッションでは、アクセシビリティ改善の実体験をもとに、今からでも始められることを中心にお話しします。
・今さら対応するのって大変じゃない?
・チーム全体でどうやって意識づける?
・アクセシビリティ改善って正直どこまでやればいいの?
そんな悩みに寄り添いながら、100点を目指さなくても、0点を1点にする方法を一緒に考えます。
“やれてない”を責めるのではなく、“今からやっていける”ことを持ち帰ってもらえる時間にしたいと思っています。
電話転送・発信・ディープリンク発信・回線の自己診断機能・市外局番(JP)の判定などの多彩な通話機能を Flutterを通じて提供するアプリの事例紹介です。
本セッションでは、Twilio Voiceを軸にCallKit(iOS)/TelephonyManager(Android)などネイティブAPIと連携した事例の紹介、Flutter特有の課題や解決策を、実店舗など商用環境で得た知見も混じえ、具体的に共有します。
Headless Engine / Riverpod / app_links / Pigeon / DCM etc..
音声や通話などの機能にご興味、知見のあるFlutter/モバイル開発者の方。
モバイルアプリで通話や音声コミュニケーションの機能導入を検討中の方。
SaaSのモバイルアプリプロダクト開発に関わっている方。
AI駆動開発における各AIの実行速度やコスト感、品質などが十分に議論されていないのが現実です。
この問いに答えるべく、設計書を起点とした「AI駆動開発」の実証実験を行った結果を報告します。
話題のAIである Devin, Claude Code Actions (CCA)、そして比較対象として人間のエンジニアの三者が、同じ仕様からFlutterアプリを実装し、各アクターが生成したコードの品質、開発速度、仕様への準拠度を客観的な指標で徹底比較します。
・Flutter開発の生産性向上に課題を感じている方
・DevinやClaudeなど、最新AIツールを実務でどう活用できるか知りたい方
・AIによるコード生成やレビューの品質・精度に具体的な関心がある方
・AIとエンジニアの未来の協業スタイルを模索している開発リーダーやマネージャー
Flutterで、アクセシビリティに配慮したアプリを開発しようと考えているエンジニアの方は多くいらっしゃると思います。
本セッションでは配色に焦点を当て、アクセシビリティに配慮した、誰もが見やすく使いやすいカラーパレットの作り方について解説します。また、Flutterアプリで、アクセシビリティに配慮したカラーパレットを実際に実装する方法についても解説します。
デザイン・アクセシビリティに興味はあるものの、具体的なアクションプランに困っている開発者に対して、詳細な開発手順をお伝えします。
・UI・UXデザイン、アクセシビリティに興味のある方
・Flutterにおけるテーマのカスタマイズについて知りたい方
・見やすさや使いやすさに配慮したアプリ開発を実践したい方
Add-to-appは、既存ネイティブアプリに段階的もしくは部分的にFlutterを組み込むための手法としてよく知られています。
一方で、既に運用フェーズにあるネイティブアプリとFlutterアプリを統合する手法としても有効であることはあまり知られていないと思います。
本セッションでは、ともにストアリリースされ長年運用されているネイティブアプリとFlutterアプリの統合を通じて、統合の具体的な方法、最適なビルド構成、ナビゲーションやライフサイクルの管理、遭遇した問題と解決方法について紹介します。
特にiOSアプリとFlutterアプリの統合について詳しく解説します。
・ iOSネイティブアプリの一部または全部にFlutterを取り入れたい開発者
・ Add-to-appは知っているが、もっと“踏み込んだ使い方”を知りたい方
riverpod_generatorによるコード生成は、今や多くの現場で採用されています。一方でコード生成は、コードベースの規模によっては時間が掛かることもあり、公式としてもあくまでオプションという位置づけでした。Dart3.4で試験導入されていたmacrosは、これを解決するための方法として期待されていましたが、今年1月30日に開発ストップが発表されました。
それを受け、Riverpodではコード生成を使わない、新しい記法が提案されています。3.0.0-dev.16のアップデートでは、コード生成を使ったMutationの記法が廃止され、新記法に置き換えられるなど、現実味も帯びてきています。
このセッションでは、Riverpodの現状の記法や問題点について整理し、新しい記法やissueでの議論について紹介します。
AI エージェントの登場により、私たちの開発体験は大きく変わっています。
実装の主体が人間から AI へ移るという大きな前提の変化によりコーディングのスピードが飛躍的に向上し、レビューやリリースの頻度も増加しました。それに伴い、品質を保ちながら迅速にデプロイを行うための CI/CD の重要性がこれまで以上に高まっています。
本セッションでは、クラウドサービス型や CLI ベース、セルフホスティングなどの既存の選択肢を、コスト体系・ビルドマシン・運用体験といった複数の観点から再評価します。その上で、Flutter プロジェクトへの導入手順や、実際の運用時の Tips をご紹介します。
Apple Intelligence 3B/Gemini Nano/Gemma 3 Nano/Llama 3 Q4 を一本の Flutter コードで動かし、
iPhoneと Pixelで「オフライン AI チャット・即時要約・校正」を同一プロンプトで実現。
それぞれのModelを下記の5点から比較し、導入から課題まで深掘り解説します。
①導入工数
②モデル・RAM
③レイテンシ
④電池
⑤ライセンス
Platform Channel/FFI の罠、Core ML・NNAPI・GPU 最適化、Gemmaのnative-assets展開も解説します。
本セッションを通じて、オンデバイスLLMを活用した iOS/Android アプリ開発のイメージを掴むことができます。
モバイルアプリ開発者でオンデバイスLLMに興味がある方
Flutter開発をチームで行う中で、コードの質をどう維持し、改善し続けるかは大きな課題です。本セッションでは、DCM(Dart Code Metrics)の導入によって、複雑度の数値化、バグやアンチパターンの早期検出、レビュー工数の削減、CI連携による自動チェックなどをどのように実現できるかを解説します。また、最近ではAIによるコード生成が増える中で、DCMのようなツールによる自動品質チェックの重要性も高まっています。現場での実例を交えながら、DCMを活かした実践的な品質管理の方法を共有します。
Dart VMのガーベジコレクション(Generational GC/Scavenger/Mark-Sweep)やNew Space/Old Spaceの構造、メモリスナップショットの仕組みを解説。ObservatoryやDevToolsを用いたメモリプロファイリング手法と、ヒープ断片化やリークを防ぐためのコード設計・チューニング戦略を共有します。
メモリ管理とパフォーマンス最適化に関心のあるソフトウェア開発者。
昨今のAIは信じられない速度で進化しており、与えられたトークンをもとに考える能力やスピードは私たちを圧倒していますが、私たちの生活そのものを変えるほどの新たな知識を与えるには、その手法やセキュリティなど多くの問題が存在します。
その答えのひとつとして、モバイル端末という閉じられた環境で動くAIがあると思います。
最近はGemma 3nなどモバイル端末上で動かすことを想定したLLMもでてきており、それらを利用することでよりセキュアかつローコストにAIを利用することができるようになりますが、果たして現状どこまで実用的なのでしょうか?
このセッションでは、実際にLLMをアプリに導入して動かす方法や、モデルに備わったRAGやFunction Callingなどの機能の実装に挑戦し、その実用性に迫ります。
モバイルデバイスでAIを動かしたい方
本セッションでは、「人間は設計書を書くだけでいい」未来を目指し、AIが機能開発を要件定義から動作可能なコードまで一気通貫で自動生成する最新フローを紹介します。
画面仕様・API定義・UX要件をAIに投げるだけで、ドメインロジックからUI層、テストコードまで生成するのを実務レベルで行い、精度、品質、コスト等を踏まえて調査結果をお届けします。
開発チームが試すべきアイデアや、一歩踏み込んだ活用のヒントを抽象度高く提示し、いかにして“設計書だけで完結する”プロセスを現実に近づけるか、その示唆をお届けします。
「手を動かさずとも動くコード」を夢見る挑戦的な姿勢を持つ方
継続的な開発において、アプリのパフォーマンスやUXの劣化は気づかないうちに進行することがあります。
WebにはGoogleが提供するLighthouseという、Webページのパフォーマンスを定量的に評価するツールがありますが、Flutterには同様の仕組みが整っていません。
本セッションでは、Flutter版Lighthouseで、パフォーマンスを測定・可視化・継続監視するための手法を提案します。
その上でFrameTiming, Timelineなどからパフォーマンスの定量化をどのようにして実現したのかを紹介し、Flutterにおけるパフォーマンスとは何なのかを理解します。
2020年に正式リリースされたFirebase App Distributionは、Flutterやネイティブアプリの配布手段として広く利用されています。
Firebase App Distributionでは配布に関連するAPIも提供されていますが、Flutterでは現時点で公式サポートされていません。
そこで今回は、ネイティブ向けAPIをFlutterから呼び出した際の動作を検証した結果をご紹介します。
※現在も試行錯誤中です
Figma Dev Mode MCPサーバーを活用し、Flutter UI開発の効率化とチーム連携の最適化に取り組んだ事例を紹介します。
単なるUIコードの自動生成にとどまらず、デザイン変更時の再生成運用やAIによるデザインレビューの支援、デザイナーと協働するためのルール設計など、開発〜レビューの一連のプロセスを整備しました。
Figmaファイル構造の設計、Flutter側ウィジェットとの対応、 プロンプトの工夫、ルールベースな生成制御を通じて、 再現性と保守性を両立するUI開発を実現。
属人性を減らし、チームで安定して開発できる仕組みづくりの実践知を共有します。
Flutter開発において、ローカルDBの選定は開発体験を左右する重要な要素です。
しかし、ローカルDBは多くの選択肢が存在し、どれを使うべきか悩む方も多いのではないでしょうか?
本セッションでは、それぞれのローカルDBを設計思想・特徴・パフォーマンスの客観的に比較し、選定のヒントとなる基準を明確にしていきます。
さらに、各DBの登場背景やエコシステムとの関係性も比較し、なぜそのDBが選ばれるのか?を明らかにします。
このトークを通して、あなたのFlutterプロジェクトに最適なローカルDBを選定するための「判断軸」を持ち帰っていただけることを目指します。
昨今、AIツールの台頭によりアプリケーションのUI開発は大きく変化を遂げようとしています。
FigmaのCode ConnectはWebやiOS、Androidには対応しているものの、Flutterには非対応であり、連携が難しい状況です。また、Claude CodeにFigmaのMCPサーバーを接続してUI実装を行う際も、精度の面で十分とは言えません。さらに、独自のデザインシステムを整備しても、その資産を活用し切れていないチームもあるのではないでしょうか?
本セッションでは、前述の課題に対する取り組みとして、Claude Codeのプロンプト設計や、デザインシステムを実装上で活用するためのCode Connectのカスタムパーサー実装例をご紹介します。
アプリは非常に便利なものですが、アプリの外でもアプリの機能を使えればユーザー体験はさらに向上します。
特にiOSでは、Live Activitiesやホーム画面ウィジェットなど、アプリ外での情報表示や操作が可能な機能が提供されています。
しかし、これらのiOSとアプリの連携機能は標準のFlutterの仕組みだけでは実現不可能です。
そこで本セッションでは、FlutterアプリにiOSのネイティブ機能を組み込む方法を紹介します。
Live Activitiesやホーム画面ウィジェットの実装方法、Method Channelを用いたFlutterとの連携やその際のテクニック、既存のプラグインパッケージの利用などについても解説し、FlutterとiOSの連携の可能性を探ります。
FlutterアプリにiOSのネイティブ機能を組み込みたいと考えている開発者
Flutter アプリの e2e テストは、Flutter Integration Test や Maestro 等ありますが、e2e を全て実現しようとすると開発コストが嵩み、e2e テストの運用・保守は属人化しやすく、仕様変更への追従も困難です。
この課題に対し QA 仕様書から生成 AI を用いて Playwright を Flutter Web で実行できるようにしました。
本セッションでは e2e テストにおける効果的なプロンプトエンジニアリングや Playwright による e2e テスト環境構築の方法を紹介します。また導入効果の試算やチーム運用メソッドなど、開発プロセスを改善するために役立つ実用的な知見を共有します。