ウェブサポート
Tracelet には Web 実装 (tracelet_web) が同梱されているため、同じ Dart API がブラウザーでコンパイルされ、実行されます。 Web プラットフォームは フォアグラウンドのみで、Android および iOS で利用可能な機能のサブセットをサポートしています。ブラウザーは基本的にバックグラウンドで地理位置情報を実行できないため、モバイルで得られる常時オンのバックグラウンド追跡ではなく、ライブのタブ内追跡 (ダッシュボード、アクティブなドライバー/ディスパッチ画面) には Web が最適です。
覚えておくべき制限が 1 つあります: Web では バックグラウンド追跡がありません。ブラウザーの Geolocation API は、バックグラウンドのタブ、閉じたタブ、または Service Worker では実行されません。追跡は、ページが開いていてフォーカスされているときにのみ行われます。
ウェブ上で機能するもの
| 特集 | メモ |
|---|---|
| 前景の位置追跡 | ブラウザ地理位置情報 API (watchPosition); start / stop / getCurrentPosition。 |
| HTTP同期 | バッチ処理と再試行を伴う fetch ベースのアップロード - 同じ HttpConfig。 |
| ジオフェンシング | ページが開いている間に近接性が評価されます。 |
| プライバシーゾーン | 機密領域内の修正を除外/劣化させます。 |
| 監査証跡 | レコード上の SHA-256 ハッシュ チェーン。 |
| 走行距離計と二酸化炭素の推定値 | 前景トラックから計算されます。 |
| 権限と接続 | 場所については navigator.permissions。接続には navigator.onLine。 |
| ローカル永続性 | メモリ内。利用可能な場合は localStorage バックアップが使用されます (一部のシークレット モードではクリアされる可能性があります)。 |
| ロギング API | getLogs()、clearLogs()、および log() は、メモリ内ログ バッファーとして機能します。 |
| フォアグラウンドのスケジューリング | シンプルなインターバルベースの開始/停止タイマー。 |
ウェブ上で利用できないもの
| 特集 | なぜ |
|---|---|
| バックグラウンド追跡 | ブラウザはバックグラウンド タブで JS と地理位置情報を一時停止します。 Service Worker には地理位置情報がありません。 |
ブート/再起動再開 (startOnBoot) | Web ページを再起動するための OS プロセスはありません。 |
| ヘッドレス タスクとヘッドレス同期コールバック | Web 上には背景の Dart アイソレーションが存在しません。 |
バックグラウンド タスク (startBackgroundTask) | バックグラウンドでの実行はありません。 |
| 動き検出 / アクティビティ認識 | 信頼できるブラウザに相当するものはありません (モーション許可はスタブです)。 |
| フォアグラウンド サービスの通知 | Android 専用のコンセプト。 |
暗号化されたデータベース (encryptDatabase) | Web ストレージはメモリ内 / localStorage (暗号化されていない) — フラグは no-op です。 |
| デバイス認証 | 同等のブラウザはありません。 |
| 推測航法 | Web上では実装されていません。 |
| テレマティクスとカスタム同期 | ハードウェア テレマティクス (getTelematicsEvents()、simulateTelematicsEvent()) またはカスタム バックグラウンド同期 (connectCustomSync()) はありません。 |
emailLog、playSound、正確なアラーム | Web に相当するものはありません (操作なし / サポートされていません)。 |
サポートされていない API の呼び出しは クラッシュしません。明確な [Tracelet Web] … not supported on web メッセージがログに記録され、安全なデフォルトが返されるため、共有クロスプラットフォーム コードは実行され続けます。
ウェブを使用する場合
- ✅ ライブ追跡ダッシュボード、配車/ドライバー画面、またはタブを開いてフォーカスしたままにするフロー。
- ✅ モバイルと Web で 1 つの Dart コードベースを共有し、ブラウザーでは正常に機能が低下します。
- ❌ 「常時オン」のバックグラウンド追跡、タブが閉じている間のジオフェンス アラート、またはページを開いていないときでもデバイスが追跡を続ける必要があるもの - そのためには Android/iOS アプリを使用してください。