Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
24時間止まらないFlutterアプリの作り方
Search
岸本 亮太
November 13, 2025
Technology
0
51
24時間止まらないFlutterアプリの作り方
岸本 亮太
November 13, 2025
Tweet
Share
More Decks by 岸本 亮太
See All by 岸本 亮太
GitHub Codespacesで実現するブラウザ上でのFlutter開発
ryotakishimoto
0
290
Other Decks in Technology
See All in Technology
未回答質問の回答一覧 / 開発をリードする品質保証 QAエンジニアと開発者の未来を考える-Findy Online Conference -
findy_eventslides
0
410
Dev Containers と Skaffold で実現する クラウドネイティブ開発環境 ローカルのみという制約に挑む / Cloud-Native Development with Dev Containers and Skaffold: Tackling the Local-Only Constraint
bitkey
PRO
0
130
AIと自動化がもたらす業務効率化の実例: 反社チェック等の調査・業務プロセス自動化
enpipi
0
790
AI開発の定着を推進するために揃えるべき前提
suguruooki
1
270
Greenは本当にGreenか? - B/GデプロイとAPI自動テストで安心デプロイ
kaz29
0
130
持続可能なアクセシビリティ開発
azukiazusa1
6
330
LINEギフト・LINEコマース領域の開発
lycorptech_jp
PRO
0
390
国産クラウドを支える設計とチームの変遷 “技術・組織・ミッション”
kazeburo
4
8.8k
『ソフトウェア』で『リアル』を動かす:クレーンゲームからデータ基盤までの統一アーキテクチャ / アーキテクチャConference 2025
genda
0
410
[CV勉強会@関東 ICCV2025] WoTE: End-to-End Driving with Online Trajectory Evaluation via BEV World Model
shinkyoto
0
340
その意思決定、まだ続けるんですか? ~痛みを超えて未来を作る、AI時代の撤退とピボットの技術~
applism118
42
23k
AI エージェントを評価するための温故知新と Spec Driven Evaluation
icoxfog417
PRO
2
720
Featured
See All Featured
RailsConf 2023
tenderlove
30
1.3k
Building Flexible Design Systems
yeseniaperezcruz
329
39k
Sharpening the Axe: The Primacy of Toolmaking
bcantrill
46
2.6k
GitHub's CSS Performance
jonrohan
1032
470k
How STYLIGHT went responsive
nonsquared
100
5.9k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
15k
Designing for humans not robots
tammielis
254
26k
ReactJS: Keep Simple. Everything can be a component!
pedronauck
666
130k
Performance Is Good for Brains [We Love Speed 2024]
tammyeverts
12
1.3k
Visualization
eitanlees
150
16k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
36
6.1k
CSS Pre-Processors: Stylus, Less & Sass
bermonpainter
359
30k
Transcript
24時間止まらないFlutterアプリの 作り方 Flutterアプリでキオスクモード実装
自己紹介 名前: きしもと 所属: サイバーエージェント 好きなもの: 猫、ゲーム、ボードゲーム
24時間止まらないとは?
24時間止まらないとは? 今回は 端末上で24時間同じアプリを表示し続ける = キオスクモード の話をします
どんな場面で使われるか? ・ 店舗の注文端末 ・ 受付システム ・ 工場の管理端末 ・ デジタルサイネージ
どんな機能が必要? 基本的な制御 ・ 一つのアプリだけを使わせる ・ 他の画面に移動させない ・ 通知を表示しない より高度な制御 ・
ハードウェアボタンの無効化 ・ 画面の常時点灯
どんな機能が必要? iOS・Android それぞれで 簡易的な実装方法 と本格的な実装方法 を紹介します
iOS - 簡易的な実装方法 アクセスガイド( Guided Access) ・ 特定のアプリに画面を固定 ・ 通知センター・コントロールセンターを無効化
・ 画面の自動ロック無効化も可能
アクセスガイド - 設定 事前に端末設定が必要 1. 設定アプリ → アクセシビリティ → アクセスガイド
2. アクセスガイドをONにする ・ 解除時のFace ID設定 ・ 画面の自動ロックを無効化(アクセスガイド起動中)
使い方 電源ボタン 3回押しで起動 1. 固定したいアプリを開く 2. 電源ボタンを3回押す 3. 「開始」をタップ 4.
画面が固定される 解除も電源ボタン3回押し → パスコード/Face ID
iOS - 本格的な実装方法 監視モード (Supervised Mode) + シングルアプリモード (Single App
Mode) 端末を企業管理下に置き、特定アプリに固定する仕組み ・ 監視モード:端末を企業が完全管理 ・ シングルアプリモード:特定アプリのみ起動
監視モードの設定方法 方法1: 設定済み企業管理アカウントで初期設定時にログイン 方法2: Apple Configuratorで設定 その後、(自律的)シングルアプリモードを設定したプロファイルをインストール
kiosk_modeパッケージの活用 監視モード + シングルアプリモードなら自動制御が可能 アクセスガイドと違い、シングルアプリモードの切り替えをコードから制御できる
Android - 簡易的な実装方法 アプリ固定( Screen Pinning) ・ 特定のアプリに画面を固定 ・ システムUIへのアクセスを遮断
・ 「戻る+タスクボタン」長押しで解除(パスコード設定可)
アプリ固定の設定 事前設定 1. 設定 → セキュリティ → アプリ固定をON 2. 解除時に画面ロックを確認をON(推奨)
使い方 1. 固定したいアプリを開く 2. タスクボタンでタスク一覧を表示 3. アプリの「固定」をタップ 解除は「戻る+タスクボタン」長押し後、パスコード認証
kiosk_modeパッケージでの実装 iOSと同じコードで実装可能 アプリ固定の切り替えをコードから制御できる
Android - 本格的な実装方法 デバイス所有者モード (Device Owner) + ロックタスクモード (Lock task
mode) 端末を専用機として完全管理するモード ・ デバイス所有者モード:端末のシステムレベルでの完全な制御 ・ ロックタスクモード:特定アプリのみ起動
デバイス所有者モードを使うための準備 2つの設定が必要 1. アプリ側:Native実装の追加 2. 端末側:デバイス所有者モードの有効化
kiosk_modeパッケージでの実装 ロックタスクモードの切り替えをコードから制御できる
24時間止まらないアプリの運用で重要なこと ・ アプリの自動更新 ・ 監視・ログ収集 ・ 万が一のための仕組み
アプリの自動更新 デバイス所有者モードを用いたアプリは一般公開に向かないため独自の更新手段が必要 android_package_installerパッケージを使用 通常のアプリ: ・ インストール時にユーザーの手動承認が必要 デバイス所有者モードがあれば: ・ 承認なしで自動インストール ・
アプリストアのような自動更新を実現
監視・ログ収集 ・ アプリのクラッシュ検知 ・ 定期的なヘルスチェック ・ 詳細なログ収集・分析 Firebase Crashlyticsなどの活用を推奨
万が一のための仕組み 遠隔でアプリを再起動できるようにしておく Firebase Messaging + restart_appパッケージで実装 プッシュ通知で遠隔から復旧可能
まとめ 簡易的な実装 ・ iOS: アクセスガイド ・ Android: アプリ固定 本格的な実装 ・
iOS: 監視モード + シングルアプリモード ・ Android: デバイス所有者モード + ロックタスクモード kiosk_modeパッケージが便利
ご清聴ありがとうございました 24時間止まらない Flutterアプリの作り方