Sobes.tech
Junior — Middle

Проектте Dagger-компонентти кантип ишке ашыруу керек?

sobes.tech AI

AIден жооп

Android долбоорунда Dagger компонентинин ишке ашыруу үчүн:

  1. @Component белгиленген интерфейс түзүңүз. Бул интерфейсте көздөгөн класстарга көзкарандылыктарды берүү же көзкарандылыктарды инъекциялоо үчүн методдорду жарыялайсыз.

  2. @Module белгиленген модулдарды аныктаңыз; аларда @Provides белгиленген методдор бар, алар көзкарандылыктарды кантип түзүү керектигин сүрөттөйт.

  3. Коддо компонентти баштаңыз, адатта, түзүлгөн класс аркылуу, мисалы DaggerAppComponent.builder().build(), жана аны көзкарандылыктарды инъекциялоо үчүн колдонуңуз.

Мисал:

@Component(modules = {NetworkModule.class})
public interface AppComponent {
    void inject(MainActivity activity);
}

@Module
class NetworkModule {
    @Provides
    Retrofit provideRetrofit() {
        return new Retrofit.Builder()
            .baseUrl("https://api.example.com")
            .build();
    }
}

// MainActivityда
public class MainActivity extends AppCompatActivity {
    @Inject
    Retrofit retrofit;

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        DaggerAppComponent.create().inject(this);
        // Азыр retrofit колдонууга даяр
    }
}