Android SDK的Bing 地图目前在 Android 版本 3.x 及更高版本中已损坏。虽然我想切换到谷歌地图,但现在对我来说不是一个选择。在任何情况下,Bing 地图都无法工作,因为 API 11 中引入了一个尚未修复的错误。AndroidWebView
目前在处理查询字符串时存在问题,并且会拒绝加载带有查询字符串的 HTML 文件。因此,我无法加载我的 Bing 地图文件,因为它的 URL 采用以下格式:
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 文件仍然没有加载 Bing 地图。我可以看到,我仍在调用GetQuerystring
以检索缩放级别和经纬度这一事实可能会出现问题,但我坚持这些。我不能像使用 API 密钥那样将缩放级别和经纬度硬编码到 Javascript 文件中。有没有办法解决?
PS Javascript 被标记是因为 Bing 地图使用 Javascript 来加载MapView
.