我正在使用 flutter_map 包 和使用 MapBox 在 Android 应用程序中创建地图,我实际上是在尝试获取矢量切片,但最终总是制作光栅切片,所以我今天放弃了它,它显示很好,URL 是有效的,直到我尝试将该代码移动到另一个文件以进行组织(虽然它工作过一次),但我不知道哪里出了问题,但突然它显示了一个空白页面,其中显示一个错误:
无效参数:URL 中未指定主机
虽然它是相同的 URL,但当我将其粘贴到 Chrome 中时,它并没有像下面的图片那样工作,即使我检查了我在 MapBox 中使用的样式一百万次,所以 URL 应该没问题!
我也尝试过一种现成的地图样式,它之前成功了,是我输入的网址错误还是什么?我是地图和 Flutter 本身的初学者。
这是 FlutterMap 小部件的代码:
FlutterMap(
options: MapOptions(
center: LatLng.LatLng(24.266906,45.107849),
zoom: 4.8,
adaptiveBoundaries: false,
),
children: [
TileLayer( //style_id: clmly80au01ts01qucmxh0meq
//access_token: pk.eyJ1IjoiaWhlYm0iLCJhIjoiY2xtbHhuOHY2MGowcTJzczd5NTFzOTFpNyJ9.1CIj8NONC6vfgGiNrJoHIw
urlTemplate: 'https://api.mapbox.com/styles/v1/ihebm/clmly80au01ts01qucmxh0meq/tiles/{z}/{x}/{y}?access_token=pk.eyJ1IjoiaWhlYm0iLCJhIjoiY2xtbHhuOHY2MGowcTJzczd5NTFzOTFpNyJ9.1CIj8NONC6vfgGiNrJoHIw',
tileSize: 512,
),
],
),
我输入了上面尝试过的内容。
(代表问题作者发布解决方案,将其移至答案空间).
经过多次尝试,这对我有用......我实际上不确定原因,因为它一定与我也尝试过的几乎相同,但它有效:D
FlutterMap(
options: MapOptions(
center: LatLng.LatLng(24.266906,45.107849),
zoom: 4.8,
adaptiveBoundaries: false,
),
children: [
TileLayer(
urlTemplate: 'https://api.mapbox.com/styles/v1/ihebm/clmly80au01ts01qucmxh0meq/tiles/256/{z}/{x}/{y}@2x?access_token=pk.eyJ1IjoiaWhlYm0iLCJhIjoiY2xtbHhuOHY2MGowcTJzczd5NTFzOTFpNyJ9.1CIj8NONC6vfgGiNrJoHIw',
additionalOptions: {
'accessToken': 'pk.eyJ1IjoiaWhlYm0iLCJhIjoiY2xtbHhuOHY2MGowcTJzczd5NTFzOTFpNyJ9.1CIj8NONC6vfgGiNrJoHIw',
'id': 'clmly80au01ts01qucmxh0meq'
}
),
],),