Ответ
В Android Bundle не предназначен для хранения больших объемов данных. При попытке сохранить 1 ГБ данных:
- Может возникнуть TransactionTooLargeException при передаче между процессами (например, через Intent)
- При сериализации/десериализации Bundle будет значительная нагрузка на CPU
- Возможны проблемы с памятью (OOM)
Рекомендуемые альтернативы:
- Для передачи больших данных между активити - использовать ContentProvider или файлы
- Для сохранения состояния - использовать Room/SQLite или файловое хранилище
Пример безопасного подхода:
// Вместо Bundle
val file = File(context.cacheDir, "large_data.tmp")
file.writeBytes(largeData)
// Передаем только путь
intent.putExtra("data_path", file.absolutePath)