如何以编程方式缓存/下载google map v2 tile?有可能吗?
Bcos根据这个prntscr.com/3cyiqf它是不可能的,但是我已经看到这个链接 TileProvider使用本地磁贴 我认为如果Android提供TileProvider类来加载/使用资产中的磁贴比它应该是可用于缓存/下载的东西以编程方式/运行时
我的实际要求是:
如果用户当时与互联网连接,他可以下载/缓存特定区域的磁贴,或者他可以在电话屏幕中下载/缓存可见地图,并且当他下线时,下载的地图应该是可见的.
到目前为止我做了什么:
我见过OSMDROID lib它们提供了非常好的功能,但问题是我只想使用Google Map V2
我已经检查过静态地图API,我也创建了一个用于下载图块的演示,但是他们返回了一个具有指定缩放级别的图像,所以在这种情况下,如果我使用静态地图api,用户只能看到1级别的地图,他们就不能能够放大/缩小所以不好.
结论:
我想知道Google Map V2是否提供了以编程方式/运行时下载/缓存地图图块的任何工具?
编辑
我可以使用谷歌地图引擎吗?
android offline-caching google-maps-api-2 osmdroid google-maps-engine
我在 Google API 中搜索下载地图的方法 (google.com/mymaps)。通过下载地图,我的意思是 POI。除了谷歌地图引擎api,我什么也没找到,但有两个问题:
问题是我的客户想要一个显示他之前创建的地图的 Android 应用程序。他想使用谷歌我的地图创建它。
问题是否有任何 API 允许我下载该数据?或者如果没有 - 获取该地图的最佳方法是什么?我想到的唯一想法是下载地图 KML 文件,但如果可能,我更喜欢使用 REST api。
我使用谷歌地图javascript api根据用户输入制作多边形(我没有使用绘图库,只是直接的v3).我希望能够将这些功能导出到kml.但是,我在javascript api中看不到任何可以让我这样做的东西.
我知道地图引擎精简版具有"导出到kml"功能.
是否有一些我遗漏的谷歌库允许导出到kml?我已经看到了一些解决方案,其中多边形的属性被发送到textarea并且用于生成kml,但我更喜欢使用现有的库而不是制作我自己的kml文件.
我目前正在设计Google Maps Store Locator应用程序.
同样,商店数据将托管在Google中,Google Maps API将用于呈现地图.
数据可以存储在Google Maps Engine(付费)或Google Fusion Tables(实验但免费)中.
我很难决定选哪一个.
问题:
有没有人在这两个或两个都工作?
两者的优点和缺点是什么?
google-maps google-maps-api-3 google-fusion-tables google-maps-engine
在新的Google地图引擎编辑器中创建了地图.现在需要使用Curl将地图导出为KML.以前版本的地图编辑器(现在称为"MyPlaces"或"我的地图经典版本")允许使用此模板为ID导出地图ID:
https://maps.google.com/maps/ms?oe=UTF8&hl=ru&msa=0&msid=${ID}&output=kml
Run Code Online (Sandbox Code Playgroud)
新的地图ID既不像旧的(也分别是zv44oKISEgzs.kzcf044WEB9ovs 107197571518206937258.000453b7c5de92024cf27),也不适合导出API.Google以200 OK回复,但回复正面.
在新的Maps Engine中是否有任何类似的API调用,只需一行shell即可将地图导出为KML?
嗨,我在下面有一个多边形:
var polygon = new google.maps.Polygon({
paths: coords,
id : 123,
strokeColor: '#FF0000',
strokeOpacity: 0.8,
strokeWeight: 1,
fillColor: '#FF0000',
fillOpacity: 0.35
});
polygon.setMap(globalMap);
Run Code Online (Sandbox Code Playgroud)
我将id属性附加到它,以便稍后可以使用它,问题是。如何找到相同的多边形并触发事件?像换颜色之类的?
function changePolygonColor(){
//refer to the polygon with id 123 (this is my question)
//change its color
polygon.fillColor = '#00FF00';
}
Run Code Online (Sandbox Code Playgroud)
非常感谢!