2022-03-18
前回osmdroidで簡単な地図を出す方法までやっていたので、今回も引き続き
osmdroidの話題を取り上げていきたいと思います。
前回の通り地図の基本的な表示に成功したので少し古いandroidでデバッグしたところ、
osmdroidの灰色のグリッド線のみしか表示されない事案が発生。
最初はmapViewの初期化の場所がおかしいのかと思ったのですが
関連性は見当たらず。レイアウト辺りでまずってないよねと
慎重に調査をしましたが怪しい所も見つからない。
ここでログを見てみることに。map表示時に合わせてログを走らせてみると・・・
Please configure a relevant user agent; current value is: osmdroid
user agent = “ユーザーエージェント” configure = “設定”
ユーザーエージェントを設定してください
公式に書いてあったから分からなかったのですが、悪さをしてる人が見つかりましたね。
地図の画像をOSMのサーバーからダウンロードする際に、ユーザーエージェントに自分のアプリのIDを入れる必要が
あったみたいです。という訳で早速実装。
以下の設定をonCreate内に書きこむことで解消することができます。
Configuration.getInstance().setUserAgentValue(BuildConfig.APPLICATION_ID);
古いandroidもこれを入れるまでは灰色で表示されていたのでosmdroidのバージョンが上がったと同時に
決められた事柄かもしれないですね。
これで全てのandroidでosmdroidを使うことができるようになりました。