Я пытаюсь передать данные из Действия A в Деятельность B, но без использования Intent putExtra или SharePreferences, я использую шаблон MVVM в kotlin, поэтому сейчас я использую объявление объекта, подобное этому
object SharedData{ var myMovies: ArrayList<Movie>? = null }
Итак, позже в упражнении A я присваиваю значение, подобное этому
val movieList = ArrayList<Movie>()
movieList.add(Movie("The Purge"))
SharedData.myMovies = movieList
А затем в Деятельности B я получаю это значение по:
val movieList = ArrayList<Movie>()
SharedData.myMovies.let {
movieList = it
}
Но я новичок в котлине, и теперь я знаю, что это неправильный подход. потому что одноэлементный объект выделяет память, и он никогда не собирается GC. Так что теперь я застрял здесь.
Будем благодарны за любые рекомендации или помощь