Junior — Middle
Кадом анотацияҳо дар Hilt барои дохил кардани синфҳо ба графи вобастагӣ истифода мешаванд?
sobes.tech AI
Ҷавоб аз AI
Дар Hilt, зследующие асосӣ аннотацияҳо барои дохил кардани синфҳо ба графи вобастагиҳо истифода мешаванд:
-
@Inject— конструктор, майдон ё усулро нишон медиҳад, то Hilt метавонад вобастагиро таъмин кунад. -
@Module— синфро нишон медиҳад, ки вобастагиро тавассути усулҳои бо@Providesнишонёфта таъмин мекунад. -
@InstallIn— нишон медиҳад, ки модул дар кадом компонент (масалан, SingletonComponent, ActivityComponent) насб мешавад. -
@Singletonва дигар scope-ҳо — давраи зиндагии вобастагиро муайян мекунанд.
Масалан:
@Module
@InstallIn(SingletonComponent::class)
object NetworkModule {
@Provides
@Singleton
fun provideApiService(): ApiService {
return Retrofit.Builder()
.baseUrl("https://example.com")
.build()
.create(ApiService::class.java)
}
}
class Repository @Inject constructor(private val apiService: ApiService) {
// ...
}
Аз ин рӯ, @Inject ва @Module бо @InstallIn асосӣ аннотацияҳо барои дохил кардани синфҳо ба графи вобастагиҳо дар Hilt мебошанд.