テーマ
PWA
設計面の Service Worker / キャッシュ戦略は 設計書: PWA を参照。本ページは仕様(ユーザー体験)視点でまとめる。
ねらい
- スマホでも PC でも、アプリのように使える
- 営業の外出先で回線が不安定でも止まらない
- 顧客連絡 / 更新の通知を端末に直接届ける
対応プラットフォーム(MVP)
| 環境 | インストール | Push 通知 | 備考 |
|---|---|---|---|
| Android Chrome | ✅ | ✅ | フル機能 |
| iOS Safari (16.4+) | ✅(ホーム追加) | ✅ | ホーム追加が前提 |
| Windows / macOS Chrome / Edge | ✅ | ✅ | デスクトップショートカット |
| Firefox (デスクトップ) | ✅ | ✅ | |
| iOS < 16.4 | ❌(ガイドのみ) | ❌ | アップデート案内 |
インストール体験
- 強制せず、1度だけ案内して後は設定画面から再表示できる
- インストール完了は
appinstalledイベントで検知し成功メッセージ
オフライン挙動(仕様面)
- 見える挙動:
- 一覧 / 詳細は最後に開いた状態を表示できる(キャッシュ)
- 顧客のメモ / アクティビティは書き込み可能(オフラインキューに保管 → 復帰時に自動送信)
- 書類のアップロードはオフライン時は保留(復帰後にアップロード)
- 見える表示:
- ステータスバーに「オフライン」「同期待ち N 件」を出す
- 同期に成功 / 失敗した個別レコードを通知
Push 通知
| 用途 | 配信主体 | 既定 ON / OFF |
|---|---|---|
| スケジュールリマインダ(前日 / 当日 / 直前) | アプリ | ON |
| LINE 着信 | アプリ | ON |
| 更新近接(90 / 60 / 30 / 7 日前) | アプリ | ON |
| 重要システム通知(請求失敗等) | アプリ | ON(OWNERのみ) |
| マーケティング / ニュース | アプリ | OFF |
- 通知タップで該当画面に遷移(顧客 / スケジュール / LINEトーク)
- 端末ごとにオン / オフを切替可能(複数端末に同時配信)
端末データの保持
- 個人情報を端末側に長期保存しない(PWA設計 参照)
- ログアウトでローカルキャッシュを全削除
- 端末紛失時の運用: OWNER が ADMIN へ申請してセッション失効
バージョン更新
- 新版検出時は画面下部にトーストで「新しいバージョンがあります(更新)」を表示
- 強制更新は最低限(破壊的変更時のみ)
アクセシビリティ
- ボタン / アイコンは最小 44 × 44px のタップターゲット
- 主要操作はキーボードのみで完結
- フォーカスリングを潰さない
- 色だけに依存しない状態表現
計測
- インストール率 / 通知許諾率 / オフライン書込数 を計測(後続)