Middle
Ինչպես իրականացնել կախվածության ներդնումը դաշտում Dagger Hilt-ով?
sobes.tech AI
Պատասխան AI-ից
Dagger Hilt օգտագործելով դրվածքի վրա կախվածությունը մուտքագրելու գործընթացը կատարվում է @AndroidEntryPoint նշանագրված դասի մեջ դաշտի հայտարարությունից առաջ @Inject նշանով:
import dagger.hilt.android.AndroidEntryPoint
import javax.inject.Inject
@AndroidEntryPoint // Այս դասը մուտքագրվելու է հավելվածում
class MyActivity : AppCompatActivity() {
@Inject // Մուտքագրում ենք կախվածությունը
lateinit var myDependency: MyDependency
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
// ...
myDependency.doSomething()
}
}
@Inject նշանով նշվում է, որ այս դաշտը պահանջում է կախվածություն: Hilt-ը կհայտնաբերի համապատասխան մատակարար (օրինակ՝ Dagger մոդուլ) MyDependency տիպի համար և տրամադրի այդ տիպի օրինակ MyActivity ստեղծելիս:
Կարևոր է հիշել, որ MyActivity դասը պետք է նշված լինի @AndroidEntryPoint-ով, որպեսզի Hilt-ը կարողանա մուտքագրել կախվածությունները նրա դաշտերին: Բացի այդ, մուտքագրվող դաշտը չի կարող լինել մասնավոր (private)։