GPS が弱い機種でも速度を出す
市販ヘッドユニットには速度をずっと 0 と報告するものが少なくありません。本アプリはそれを検知し、連続する測位から速度を自分で計算する方式に切り替えます。
車載ディスプレイのための地図と速度警告
Z-Maps Car は、すでに車に付いている Android ヘッドユニット上で OpenStreetMap のデータを使って動きます。Google Play 開発者サービスも API キーも追加機器も不要 — APK を入れれば走り出せます。
400 mグエン・ヴァン・リン通りを右折12 分 ・ 8.4 km
国道1号線 — ダナン市ホアヴァン
GPS 良好 ・ 速度は測位から算出
実機の画面で
モックアップではなく、実機のスクリーンショットです。



できること
本アプリは車の ECU から何も読み取りません。表示はすべて測位と地図データから導かれます — だからこそ、APK を入れるだけで設定は完了です。
市販ヘッドユニットには速度をずっと 0 と報告するものが少なくありません。本アプリはそれを検知し、連続する測位から速度を自分で計算する方式に切り替えます。
データに maxspeed があればそれを使います。ない場合は道路種別と市街地かどうかから推定し、推定であることが分かるよう「~ 推定値」を明示します。
3 km/h のヒステリシスにより、制限速度付近を走っているときに GPS のゆらぎで警告が点滅することを防ぎます。重大度に応じて 30/20/12 秒の間隔 — ただし悪化したときは即座に知らせます。
MapLibre が走った道を 512 MB までキャッシュします。通信のない状態で通い慣れた道を走っても、地図はそのまま表示されます。
推定が外れている場所は運転画面から修正できます。入力した数値はその区間に記憶され、次に通るときに使われます。
距離、時間、平均速度と最高速度、超過回数を走行ごとに保存します。300 m 未満の移動は記録しません。
技術選定
以下の各行は、別の選択肢もあり得た箇所です。何をインストールすることになるのかが分かるよう、明記しています。
| 領域 | 採用 | 理由 |
|---|---|---|
| 対象端末 | minSdk 23 → targetSdk 35 | 新しい機種だけでなく、古い中国製ヘッドユニットも対象に含めるため。 |
| 地図描画 | MapLibre Native 11.11 | ベクタータイル、GPU 描画、深いカスタマイズが可能な本格的な Android SDK。 |
| タイル配信元 | OpenFreeMap (liberty) | OpenMapTiles スキーマ、API キーも利用量制限も不要 — 誰も登録手続きをしなくて済みます。 |
| オフライン | 512 MB のアンビエントキャッシュ | 走った分をキャッシュします。県全体を先にダウンロードしなくても、途中で電波が切れて地図が残ります。 |
| 位置と速度 | 素の LocationManager | Fused Location は Google Play 開発者サービスのない端末では無反応で、それが主要な対象層だからです。 |
| 制限速度 | OSM の maxspeed → 道路種別からの推定 | ベトナムの道路は maxspeed タグが欠けていることが非常に多く、公開タイルはそもそも保持していません。 |
バージョン 0.1.0
お使いの機種のチップに合う APK をダウンロードし、提供元不明のアプリのインストールを許可して、位置情報を許可するだけです。手順はガイドで一つずつ説明しています。