1

我们正在开发一个项目,我们有我们的自定义 JSON 文件以离线加载(从应用程序本身)以及在 TerriaMap 中从远程站点加载数据。因此,我们在 android 系统内创建 localhost,指定端口当前为 8080。大多数示例都在离线正确加载,3D 数据不显示,但应用程序缩放到正确的位置。一些 JSON 文件正在从远程站点加载数据。
当我在这里尝试基于示例json 文件的数据集时。此文件在计算机的本地主机上正确显示数据,没有任何错误,并从远程站点获取数据但在 android 系统中显示语法错误:

SyntaxError:JSON 中位置 0 的意外标记 j

在调查 android 控制台时,我发现它_1d/被添加到 URL 作为响应的前缀。因此,URL 变为_1d/URL. 这是详细信息

E/====:_1d/ https://basemap.nationalmap.gov/arcgis/rest/services/USGSImageryOnly/MapServer
E/Ion:异常java.lang.Exception:未知的uri方案
结果
I/System.out:关闭[socket][::/:::8080]
I/ServerRunnable: 处理请求 {0} {1}
E/====: _1d/ https://basemap.nationalmap.gov/arcgis/rest/services/USGSImageryOnly /MapServer/layers
E/Ion: 异常 java.lang.Exception: Unknown uri scheme
result
I/System.out: close [socket][::/:::8080]
I/art: 进入 while 循环。
I/ServerRunnable:处理请求 {0} {1}
E/====:_1d/ https://basemap.nationalmap.gov/arcgis/rest/services/USGSImageryOnly/MapServer/legend
E/Ion: 异常 java.lang.Exception: Unknown uri scheme
result
I/System.out: close [socket][::/:::8080]
I/chromium: [INFO:CONSOLE(408)] "SyntaxError: Unexpected位置 0 处 JSON 中的令牌 j”,来源:http://localhost:8080/build/7.TerriaMap.js (408)
I/chromium: [INFO:CONSOLE(0)] “访问 XMLHttpRequest 在 ' https:/ /assets.cesium.com/1/layer.json '来自源' http://localhost:8080 '已被 CORS 策略阻止:对预检请求的响应未通过访问控制检查:'Access-Control-Allow -Origin'标头包含无效值'localhost'。”,来源:http://localhost:8080/#tmg_catalog_custom (0)
I/chromium: [INFO:CONSOLE(56)] ““T”发生错误:访问https://assets.cesium.com/1/layer.json时发生错误。”,来源:http:// localhost:8080/build/7.TerriaMap.js (56)
I/ServletContainerImpl: 运行过时的 servlet 检查 - 没有注册 servlet。
I/ServletContainerImpl:运行过时的 servlet 检查。

我怎样才能让它在android中工作?欢迎任何帮助/指南。

4

0 回答 0