Я пытаюсь сохранить несколько списков сериализуемого объекта во временном кэше, используя GOOGLE DOCUMENTATION без удачи. (Какой тип файла следует хранить?)
private fun cacheMenuList(venueId: Int, menuCategories: List<MenuCategory>) {
var fileOutputStream: FileOutputStream? = null
var objectOutputStream: ObjectOutputStream? = null
try {
fileOutputStream = context?.openFileOutput("$FILE_NAME_PREFIX$venueId$FILE_NAME_SUFFIX", Context.MODE_PRIVATE)
objectOutputStream = ObjectOutputStream(fileOutputStream)
objectOutputStream.writeObject(menuCategories)
Log.d("CHECKFILES", "File saved ->>>>>>> $menuCategories")
} catch (error: FileNotFoundException) {
Log.d("CHECKFILES", "Save error stack trace ${error.printStackTrace()}")
} catch (error: IOException) {
Log.d("CHECKFILES", "Save error io exception stack trace ${error.printStackTrace()}")
} finally {
if (fileOutputStream != null && objectOutputStream != null) {
try {
objectOutputStream.close()
fileOutputStream.close()
} catch (error: IOException) {
Log.d("CHECKFILES", "Save error io exception stack trace ${error.printStackTrace()}")
}
}
}
}
Не совсем уверен, как я могу сохранить его в File.createTempFile(filename, null, context.cacheDir)
и как получить уже проанализированный список кэшированных объектов.
Заранее спасибо!