Android:这里有地图,如何加载瓷砖图像异步?

时间:2015-09-08 01:55:41

标签: android amazon-s3 here-api

作为图块,我正在使用Here-map

我正在尝试从S3服务器自定义光栅图块。在文档中,有两个类支持我这样做:UrlMapRasterTileSourceBase和MapRasterTileSource。

在我的情况下,我尝试新建一个MapRasterTileSource实例,然后覆盖getTileWithError(int x,int y,int zoomLevel)函数,从S3服务器加载我的tile图像。

问题是加载图像的时间太长,并且UI似乎滞后。

在文件中,这是部分:

  

注意:确保getTileWithError()在合理范围内返回   多少时间。如果您的手术需要更长的时间,   启动异步操作并返回   操作所在的TileResult.Error.NOT_READY错误代码   进展。

但是,我不知道如何应用它。我试图用回调加载图像,但在得到结果后不知道该怎么做。

请你帮个忙!?

1 个答案:

答案 0 :(得分:1)

如何从S3加载光栅图块?它是从getTileWithError调用的同步HTTP请求吗?

正确的流程应该是: -getTileWithError()//用于特定的x,y,z - 通过线程或AsyncTask异步执行从S3层获取的tile。 - 同时,将连续调用getTileWithError(),并返回“TileResult.NOT_READY” - 图像完全下载后,将图像返回运行时。

如果在getTileWithError中花费的时间过长,则会自动禁用磁贴源。