android - openlayer map 的限制是什么

标签 android openlayers

大家好我正在为我的下一个项目做一些基础工作,我需要在应用程序中显示 map 。我正在寻找谷歌地图的替代品,我在这里找到了一个列表 Alternatives to google maps api我正在考虑使用 OpenLayer map 。我想知道使用 OpenLayers 是否有任何限制是否有人在这方面工作过。我在 OpenLayers 网站上找不到任何限制。

最佳答案

我目前正在实现一个应用程序,该应用程序使用 openlayers 来显示由我们自己的图 block 服务器提供的基于 OSM 的 map 。我在 WebView 中使用 OL。 html 文件和脚本、图像...存储在应用程序的 Assets 文件夹中并从那里调用。

到目前为止一切正常。但是对于 Android,您对多点触控导航有限制。尽管该设备支持多点触控(尤其是双指缩放手势),但 Android WebView(和标准浏览器)无法支持。自 2009 年以来,对于 Android < 3.0,这是一个悬而未决的问题 您可以根据 limitation documentation on openlayers.org 找到并且有一个汇总表(我会发布它,但 StackOverflow 不允许我发布图片,因为我是新成员) There is an interesting project为了在 Android 上实现双指缩放,我将在接下来的几周内尝试一下。

虽然从普通浏览器观看时 map 的性能非常好,但在 web View 中使用它时存在一些性能问题:任何缩放操作都会导致异常高的 cpu 负载,并且无法使用该应用程序5-10 秒。我只在 Samsung Galaxy S1 (Android 2.3.6) 上测试过它。但是,性能问题不会出现在模拟器上。下周我应该有双核 cpu 的 android 设备。我认为这将使该应用程序再次可用于 WebView 中的 map (将告诉您我的结果)。

总结我的经验,我必须说 OpenLayers 真的很强大,我觉得你可以用它做任何事情。您只需要在谷歌上搜索教程即可;-)

更新: 本周我能够在三星 Galaxy S3 上进行测试。 map 的性能很棒!没有问题了。由于 S3 配备了 Android 4.0.4,多点触控手势默认可用 - 无需更改。在模拟器上,当您非常密集地使用 map (缩放)时会出现一些问题 - 但在设备上不会出现此类问题。 我发现 Galaxy S 1 的 webview 缓存(仍然)有一些错误,因此速度非常慢。对于只有单核 cpu 的手机来说,这可能是个问题。无法测试另一台设备。 但是,如果您找不到问题的解决方案并认为这是一个与 openlayers 相关的问题,请检查 project page for issues

关于android - openlayer map 的限制是什么,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/11045299/

相关文章:

android - ListView 黑色 onScroll

javascript - Openlayers 导出为 KML 并保留我的 map 样式

javascript - OpenLayers 2.13 吃鼠标左键单击?

css - jQuery 和 OpenLayers 匹配主题

android - 当 'sdkmanager --licenses' 在 2020 年不起作用时如何接受 android sdk 许可协议(protocol)

android - React Native fbsdk构建错误无法找到方法实现()

java - R.layout.main 和 R.id.gridview

android - 我们如何在 Android Studio 的 styles.xml 中给出具有特定颜色代码的颜色?

javascript - 如何在 OpenLayers 中向矢量添加弹出框?

javascript - 如何使用 OpenLayers 从 OSM 获取透明 Tiles