我正在使用Android抬头显示器,该显示器的蓝牙连接速度很慢。
每次我触发performMapDataUpdate时,它最终都会失败,并显示UNEXPECTED_ERROR
在返回错误之前,我在后台还遇到了一系列logcat异常:
E/NetworkProtocol( 1812): NetworkProtocol::GetTask::run exception: java.net.ProtocolException: unexpected end of stream
W/System.err( 1812): java.net.ProtocolException: unexpected end of stream
W/System.err( 1812): at com.android.okhttp.internal.http.HttpConnection$FixedLengthSource.read(HttpConnection.java:449)
W/System.err( 1812): at com.android.okio.RealBufferedSource$1.read(RealBufferedSource.java:168)
W/System.err( 1812): at java.io.BufferedInputStream.read(BufferedInputStream.java:290)
W/System.err( 1812): at java.io.InputStream.read(InputStream.java:162)
W/System.err( 1812): at com.here.network.NetworkProtocol$GetTask.doInBackground(NetworkProtocol.java:418)
其他网络任务似乎工作正常,当没有离线地图时,这里地图在线缓存可以正常工作,流量更新等也可以。但是,它没有其他尝试一次下载的东西。
有什么办法告诉Here api继续重试这些连接吗?
或者,有什么方法可以从PC进行离线地图更新吗? 我已经在使用隔离的磁盘缓存,并且我的设备在插入计算机时确实会作为USB驱动器出现,因此如果我可以在桌面上运行SDK并将其指向USB上的此处缓存文件夹以更新地图,理想。
谢谢。
答案 0 :(得分:0)
这可能是因为MapDataUpdate需要下载相对大量的数据。
有什么办法告诉这里的api继续尝试这些 连接吗?
不,没有这样的API(SDK中有硬编码的重试次数)。
有什么方法可以从PC进行离线地图更新吗?
否,这是不可能的(您将破坏MapLoader机制)。
BR