現在、AndroidSDK用のBingMapsは、Androidバージョン3.x以降では機能していません。グーグルマップに切り替えたいのですが、今のところ選択肢がありません。いずれの場合も、API 11で導入され、まだ修正されていないバグのため、BingMapsは機能しません。AndroidWebView
は現在、クエリ文字列の処理に問題があり、クエリ文字列を含むHTMLファイルの読み込みを拒否します。したがって、URLが次の形式であるため、BingMapsファイルを読み込めません。
file:///android_asset/map.html?bingMapsKey=INSERTBINGMAPSKEYHERE&lat=WHATEVER&lon=WHATEVERLSE&zoom=10&mkt=en-US
クエリ文字列を含めずにマップをロードする方法はありますか?HTMLファイルまたはJavascriptファイルを編集する必要がありますか?どのように編集すればよいですか?さて、私はJavascriptファイルを調べて、次のスクリプト行を変更しました
var key = "MYKEY";
// _bingMapKey = Utilities.GetQuerystring('bingMapKey', '');
_bingMapKey = key;
var options = {
credentials : _bingMapKey,
zoom: parseInt(Utilities.GetQuerystring('zoom', '1')),
center: new MM.Location(parseFloat(Utilities.GetQuerystring('lat', '0')),parseFloat(Utilities.GetQuerystring('lon', '0'))),
showDashboard : false,
showScalebar: false,
showCopyright: false,
enableSearchLogo: false,
enableClickableLogo: false,
fixedMapPosition: true };
ただし、HTMLファイルはまだBingMapsをロードしていません。GetQuerystring
ズームレベルと緯度経度を取得するためにまだ呼び出しているという事実から問題が発生する可能性があることがわかりますが、私はそれらに固執しています。APIキーのように、zoom-levelとlat-lonをJavascriptファイルにハードコーディングすることはできません。これを回避する方法はありますか?
PS Javascriptは、BingMapsがJavascriptを使用してをロードするためにタグ付けされていますMapView
。