【发布时间】:2017-10-26 13:00:23
【问题描述】:
我想知道你们中是否有人知道如何将 Open Street Maps(OSM) 与 cordova 一起使用?现在正在搜索几天..
我只能得出结论,我不应该直接使用 OSM 的 API,因为如果我有太多的调用,他们的服务器会阻止我。所以有免费的开源名称,比如 1.Openlayers 2.允许我免费使用 OSM 的传单。但是我遵循了他们所有的教程,但我无法让地图显示在模拟器上。..
我正在使用 Visual Studios 2015 社区版。并与科尔多瓦合作。涉及到 HTML、CSS 和 JavaScript(jQuery).. 但我根本看不到地图..
编辑 2、3、4
<!DOCTYPE html>
<html>
<head>
<title>Test</title>
<link rel="stylesheet" href="https://unpkg.com/leaflet@1.2.0/dist/leaflet.css"
integrity="sha512-M2wvCLH6DSRazYeZRIm1JnYyh22purTM+FDB5CsyxtQJYeKq83arPe5wgbNmcFXGqiSH2XR8dT/fJISVA1r/zQ=="
crossorigin=""/>
<script src="https://unpkg.com/leaflet@1.2.0/dist/leaflet.js"
integrity="sha512-lInM/apFSqyy1o6s89K4iQUKg6ppXEgsVxT35HbzUupEVRh2Eu9Wdl4tHj7dZO0s1uvplcYGmt3498TtHq+log=="
crossorigin=""></script>
<style>
#mapid {
height: 180px;
}
</style>
</head>
<body id="Main">
<div id="mapid"></div>
<script>
var mymap = L.map('mapid').setView([51.505, -0.09], 13);
L.tileLayer('https://api.tiles.mapbox.com/v4/{id}/{z}/{x}/{y}.png?access_token={mytoken}', {
attribution: 'Map data © <a href="http://openstreetmap.org">OpenStreetMap</a> contributors, <a href="http://creativecommons.org/licenses/by-sa/2.0/">CC-BY-SA</a>, Imagery © <a href="http://mapbox.com">Mapbox</a>',
maxZoom: 18,
id: 'mapbox.streets',
accessToken: 'mytoken'
}).addTo(mymap);
</script>
</body>
</html>
编辑 5、6
编辑 7
我已经编辑了白名单。我猜它在这里,因为我能看到在 config.xml 中添加白名单的唯一地方是
编辑 8
编辑 9
现在,在我的 JS 文件中
1. 这是原始文件的第一张图片,你可以看到我已经覆盖了我的令牌
2. 所以就像你说的我用互联网上的图片替换了它所以我从互联网上拍了一张猫头鹰的照片
我现在遇到的问题是:
https://api.tiles.mapbox.com/v4/MapID/997/256/{z}/{x}/{y}.png?access_token=mytoken
所以我试着说:
在 CSP 中 但是矢量图像仍然没有显示:(现在有什么想法吗?
【问题讨论】:
-
OpenLayers 和 Leaflet 只是用于显示地图图块和各种叠加层的 JavaScript 框架。他们仍然需要从瓦片服务器检索他们的地图瓦片。此磁贴服务器可以是官方 OSM 磁贴服务器,也可以是许多第三方磁贴服务器之一。无论哪种方式,您都需要提供有关您的问题的更多信息。
-
嗯,基本上我只需要在我的科尔多瓦应用程序上显示 OSM!我不知道该怎么做,因为没有任何教程可以告诉我如何在科尔多瓦上做到这一点。您能否指导我如何以任何可能的方式将 Cordova 与 OSM 连接起来。
-
如果地图控件正确加载但瓦片未正确加载(即底图仍为灰色),您可能忘记将瓦片服务器 URL白名单。使用 Chrome 远程检查器进行调试肯定会有所帮助。
-
嘿 ghybs 我感谢您的回复,但我只需要一些帮助来首先设置所有内容。也许有任何在线教程?我似乎找不到任何与 Cordova 和 OpenStreetMaps 相关的内容 :(
标签: cordova visual-studio-2015 leaflet openlayers openstreetmap