Mapbox を使用してAndroidアプリを開発してみた感想

チュートリアルが充実している

外部の地図APIを使用してAndroidアプリを開発するためには、アカウントの作成、APIのトークンの取得などが必要となりますが、公式のチュートリアルで解説されています。
https://docs.mapbox.com/help/tutorials/first-steps-android-sdk/

その他、Android StudioへのSDKの組み込み方や、地図のスタイルの変更方法、マーカーの追加方法など基本的な操作はチュートリアルで解説してくれていました。

使用料がリーズナブル

地図アプリの開発といえばGoogleのGoogle Maps Platformが有名だが、毎月の無料枠が200ドルとなっており、アプリの複数の画面で地図を表示し、ナビゲーション機能まで使おうとすると、すぐに無料枠を超えてしまいます。
https://cloud.google.com/maps-platform/pricing/sheet/?hl=ja

が、Mapboxの場合は課金がAPIごととなっているため、例えば地図も表示するし、ナビゲーションも使用する、という場合はMapboxのほうが有利となるでしょう。

また、Googleの場合はストアにアップしない商用アプリの場合はアプリ販売(デモ含む)にライセンス契約が必要となり、これが年間1万ドルかかります。一方、Mapboxであれば商用ライセンスは499ドルで購入可能です。(ただし、公式にはライセンス費用はセールスチームへ問い合わせ、となっていたので正しいライセンスfeeを現在確認中)

スタイルのカスタマイズが柔軟に可能

MapboxにはMapbox StudioというJavaScriptベースのスタイル編集ツールが存在するため、表示する地図のスタイルを自社のコーポレートカラーやイメージに合わせ編集する、といったことが簡単に可能となっています。

丁寧にサポートしてくれる

Mapboxはまだ日本での事業を開始してからそれほど時間が経っていません(2019年7月にSoftbankからの出資を受けることと、mapbox.jp での活動を開始すること発表)。そのため、サポートチームとは基本的に英語でのやり取りとなります。サポートは Zendesk で行われており https://support.mapbox.com/hc/en-us
からサインインが可能です。

私も何度かアプリ開発の途中でサポートの方に連絡し、地図データの編集リクエストのあげ方やAPIの使用方法を確認しましたが、非常に丁寧に回答してくれるほか、OSM(OpenStreetMap)側の修正を反映スピードを上げてくれたりと、非常に丁寧な対応をしていただきました。ただし、コミュニケーションに英語はちょっと・・・という日本の開発者の方はまだ多いと思いますので、日本語サポート窓口の開設が待たれます。

日本語化が可能

ナビゲーション時の音声や地図に表示される地名、ナビゲーション中のUIまで、すべて日本語化が可能です。ただし、地図(いわゆるMapView)の日本語化と、ナビゲーション(いわゆるNavigationView)の日本語化ではそれぞれ違ったコツが必要となったので、多言語対応のためのチュートリアルなどあればいいと感じました。

日本語の情報はまだ少ない

Mapbox SDK でサポートされているViewはActivityやFragmentのライフサイクルに応じたメソッドを持っており、その呼び出しが必要な個所でなされていないと、状態不正でExceptionとなることがあります。

Exception発生時は現象発生時のメッセージやスタック情報から情報を集めていくのですが、これがほとんど日本語でヒットしませんでした。(Stack Overflow ならばある程度情報がある)。

また SDK のドキュメントは基本的に英語で書かれていますので、この点も開発する際に想定よりも時間がかかることにつながるかもしれません。

オフラインルーティングやenterpriseプランに関する情報が不足している

通常の地図表示やナビゲーションにおいてはインターネットで調べながらで構築可能ですが、OfflineManager や MapboxOfflineRouter といったオフライン向け機能となると途端に情報量が少なくなります。タイルのダウンロードが6000個までで、それ以上のダウンロードや、デモ提供されているフェロー諸島以外に対してオフラインルーティングを試すには、enterprise契約が必要となることも、調べないとなかなか情報が出てきませんでした。

Mapboxを使用するアプリ開発者が増えていってほしい

ただ、上記で上げたデメリットはいずれでもまだ日本での開発者が少ないことに起因すると思います。すでに地図データがデジタル化されてから久しいですが、地図のデータ化とその活用はますます重要な技術要素となっています。その状態で地図APIや地図データが独占されていると、健全な発展は望めません。技術革新や価格の安定化のためにも、柔軟に地図データやナビゲーションを活用できるサービスと、その開発者が増えていってほしいと感じています。

Mapbox を利用したAndroidアプリケーション開発をお考えなら

Mapbox は高機能で便利な地図プラットフォームですが、前述のとおり日本語の情報が少なく、ゼロベースの開発では予算や納期について慎重に検討する必要があります。もしこれから開発ベンダーを探すのであれば開発実績がある弊社までぜひご相談ください。