А как насчет введения таких дополнений / аргументов в ваши модели представления?Вы можете достичь этого, получив доступ к такой деятельности / фрагменту с помощью кинжала.
@Module
class IntentModule {
@Provides
fun retriveIntentWithExtraX(activity: DestinationActivity): Long {
return activity.intent.getSerializableExtra(SOME_EXTRA_DATA) as Long
}
}
И внутри модуля с вашими активностями / фрагментами:
@Module
abstract class ActivityModules {
@ContributesAndroidInjector(modules = [IntentModule::class])
abstract fun contributeDestinationActivity(): DestinationActivity
}
наконец вы можете добавить такие аргументы / дополнительные в вашViewModels как это:
class SomeViewModel @Inject constructor(
private val someExtraData: Long
) : ViewModel()