android - OSM+Leaflet 磁贴未加载或显示(Android-Cordova)
问题描述
几个月前我制作了一个使用openstreetmap和leaflet.js的cordova应用程序。它运行良好,并且仍然可以在我的队友每天使用的 Android 手机上运行,但是当我尝试在一些新的平板电脑(使用 Android 10)上使用它时,我的应用程序只加载(或只显示)灰色地图图块。
检索坐标、标记等其他功能似乎运行良好,但地图图块没有加载或显示。
我该如何解决这个问题?
我在 id="mapa" 的 div 中加载地图的配置是:
var caracteristicas_mapa = {
center: [0, 0],
zoom: 17
}
// Crear objeto mapa
window.mapa = new L.map('mapa', caracteristicas_mapa);
// Crear objeto capa (layer)
var capa = new L.TileLayer('http://{s}.tile.openstreetmap.org/{z}/{x}/{y}.png');
// Agregando la capa al mapa
window.mapa.addLayer(capa);
谢谢你们。
解决方案
使用 https 作为 TileLayer URL。
(您应该获得从 http 到 https 的重定向,但加载混合内容可能会被您的应用程序阻止)。
推荐阅读
- c++ - 指针究竟是如何遍历字符串/数组的?
- postscript - 如何在 PostScript 中生成随机 ASCII 字符(或十六进制字节)0-255
- tensorflow - @tf.function 装饰器的 TF 2.0 错误?
- c# - C#:如何按值从 Xml 文件中选择单个节点(元素?)?
- python - 如何在没有“段落”对象的情况下更改 MS Word 表格中单元格文本的对齐方式
- javascript - videojs播放器搜索栏上的自定义拖动器
- javascript - Next.js 从 Docker 容器无限重新加载
- c++ - 从另一个线程访问具有自动存储持续时间的对象
- html - mx-auto 有效,但 my-auto 无效,我做错了什么?
- sql-server - 存储过程中出现不匹配错误的问题