关于HERE JavaScript API,我有一个非常基本的问题。我最近开始研究HERE Maps,甚至有一个Android应用程序与HERE的android SDK一起使用。在一个应用程序中,我可以下载地图数据并离线使用该应用程序。不过,在此之后,我还要使用HERE JavaScript API为台式机和移动设备创建一个项目。
所以,我的问题是,无论是在移动设备还是在台式机上使用,HERE JavaScript API都可以像Android SDK一样脱机工作吗?它是相同的过程-下载数据并指向它吗?还是HERE JavaScript API需要持续在线使用?我在HERE文件上找不到直接的答案,因此任何澄清都将非常有帮助。谢谢!
答案 0 :(得分:1)
否,HERE JavaScript API无法像Android SDK一样脱机工作,因为与HERE JavaScript API不同,用于移动设备的HERE SDK还具有路由,地理编码等API。这些API可以脱机工作。
HERE JavaScript API仅可以永久存储给定区域和缩放级别范围内的栅格地图图层的内容。有关更多详细信息,请参见H.Map#storeContent。
它可用于在没有互联网连接时启用地图渲染,并减少经常访问的地图区域的下载流量。当前,这仅支持栅格图块(不支持矢量图块!)。 请参见示例:
map.storeContent(
function(req) {
if (req.getState() === H.util.Request.State.COMPLETE) {
console.log('Raster tiles of maps base layer stored successfully.');
}
else if(req.getState() === H.util.Request.State.ERROR) {
console.log('Something happened, storing the content was not successful.');
}
},
map.getViewModel().getLookAtData().bounds.getBoundingBox(),
map.getZoom(),
map.getZoom() + 2
);
上面的代码存储当前视口从当前缩放到当前缩放+ 2的栅格图块。 之后,您可以关闭wifi并缩放地图以查看从浏览器缓存中加载的图块。