Я использую библиотеку Square Tape для очереди загрузки данных на сервер.
Очередь сохраняется в файле в формате JSON. Когда приложение запускается, я запускаю очередь и начинаю загрузку (например, если на Wifi). Однако на некоторых устройствах у пользователей я вижу EOFException
с сообщением 'null'
(зарегистрировано в crashlytics).
Ошибка при создании объекта FileObjectQueue
из существующего файла - из сбора информации об отладке фактический файл составляет ~ 1 МБ.
Любые идеи, что вызывает это или как предотвратить это? - Возможно, мне нужно пылесосить мой java.io.
Изменить: используя Tape v1.2.1
Caused by: java.io.EOFException
at java.io.RandomAccessFile.readFully(RandomAccessFile.java:419)
at java.io.RandomAccessFile.readInt(RandomAccessFile.java:439)
at com.squareup.tape.QueueFile.readElement(:182)
at com.squareup.tape.QueueFile.readHeader(:162)
at com.squareup.tape.QueueFile.(:110)
at com.squareup.tape.FileObjectQueue.(:35)
at com.myapp.queue.MyUploadTaskQueue.create(:125)
Обновлено. Также можно увидеть эту ошибку с момента обновления до версии 1.2.2
Caused by: java.io.IOException: File is corrupt; length stored in header is 0.
at com.squareup.tape.QueueFile.readHeader(:165)
at com.squareup.tape.QueueFile.<init>(:117)
at com.squareup.tape.FileObjectQueue.<init>(:35)