Я работаю над дисплеем с поддержкой Android, у которого довольно медленное интернет-соединение.
Каждый раз, когда я запускаю executeMapDataUpdate, он в конечном итоге завершается с 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)
Другие сетевые задачи, кажется, работают нормально, здесь кэширование онлайн-карт работает, когда нет автономных карт, как и обновления трафика и т. Д. Однако больше ничего, вероятно, будет пытаться загрузить столько же за один раз.
Есть ли какой-нибудь способ указать здесь api, чтобы он продолжал повторять попытки для этих соединений?
В качестве альтернативы, есть ли способ обновить автономные карты с ПК?
Я уже использую изолированный дисковый кеш, и мое устройство при подключении к компьютеру работает как USB-накопитель, поэтому, если бы я мог запустить SDK на рабочем столе и указать его в папке кэша здесь на USB, чтобы обновить карты, которые будут будь идеальным.
Спасибо.