The following will warn this field leak a context object
.
@HiltViewModelclass HomeViewModel @Inject constructor( @ApplicationContext private val applicationContext: Context, private val db: FirebaseFirestore, private val auth: FirebaseAuth ): ViewModel() {}
NOTE: I suspect this is a bug (false warning), since application context live through the entire application cycle.
Solution
@HiltViewModelclass HomeViewModel @Inject constructor( @ApplicationContext applicationContext: Context, private val db: FirebaseFirestore, private val auth: FirebaseAuth ): ViewModel() { // val context: Context = applicationContext private val context: WeakReference<Context> = WeakReference(applicationContext) fun test() { context.get()?.let { context -> } }}