Conversation
antonkazakov
left a comment
There was a problem hiding this comment.
Привет. Пару комментов написал
app/src/main/java/ru/otus/daggerhomework/ApplicationComponent.kt
Outdated
Show resolved
Hide resolved
| private val context: Context | ||
| ) { | ||
| @ContextApplication private val context: Context, | ||
| private val colorObservable: IColorObservable, |
There was a problem hiding this comment.
Отсюда не нужно давать возможность эмитить события
There was a problem hiding this comment.
Они здесь и не имитятся, только подписка на события.
Или я не правильно понял по задаче?
There was a problem hiding this comment.
Но у тебя при этом есть возможность заэмитить, а яя не должно быть.
Посмотри на разделение в stateflow/livedata
| private val colorGenerator: ColorGenerator, | ||
| private val context: Context | ||
| ) { | ||
| @ContextActivity private val context: Context, |
There was a problem hiding this comment.
Здесь будет утечка памяти. Тк ViewModelProducer живет дольше чем Context
| class MainActivity : AppCompatActivity() { | ||
| @Inject | ||
| @ContextApplication | ||
| lateinit var _applicationContext: Context |
There was a problem hiding this comment.
Его можно не инжектить. У активити есть метод getApplication
| ) { | ||
| private val context: Context, | ||
| private val colorObservable: IColorObservable, | ||
| ): ViewModel() { |
There was a problem hiding this comment.
Нужно убрать наследование иначе потечет память тк ВМ живет дольше чем активити
| private val context: Context | ||
| ) { | ||
| @ContextApplication private val context: Context, | ||
| private val colorObservable: IColorObservable, |
There was a problem hiding this comment.
Но у тебя при этом есть возможность заэмитить, а яя не должно быть.
Посмотри на разделение в stateflow/livedata
No description provided.