Как использовать библиотеку Dagger2 - PullRequest
0 голосов
/ 11 февраля 2019

В моем приложении я хочу использовать Dagger2, и для этого я пишу следующие коды.
Имя класса моего компонента MainComponent , но после rebuild проект, когда я хочу использовать это, не нашел меня DaggerMainComponent !
I несколько раз перестроил проект, но он снова не работал!

Зависимость My Dagger:

implementation 'com.google.dagger:dagger-android:2.16'
annotationProcessor 'com.google.dagger:dagger-android-processor:2.16'

Класс My Module:

@Module
public class ApiServiceModule {
    private Context context;

    public ApiServiceModule(Context context) {
        this.context = context;
    }

    @Provides
    public ApisList getApisList(Retrofit retrofit) {
        return retrofit.create(ApisList.class);
    }

    @Provides
    public Retrofit getRetrofit() {
        return new Retrofit.Builder()
                .baseUrl(Config.BASE_URL)
                .addConverterFactory(GsonConverterFactory.create())
                .build();
    }
}

Класс My Component:

@Component(modules = ApiServiceModule.class)
public interface MainComponent {
    ApisList getApisList();
}

Мой класс mainActivity:

public class MainActivity extends AppCompatActivity {

    @Override
    protected void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.activity_main);


    }
}

Как я могу это исправить?пожалуйста, помогите мне

1 Ответ

0 голосов
/ 11 февраля 2019

Измените ваши коды зависимостей следующим образом:

annotationProcessor 'com.google.dagger:dagger-compiler:2.16'
implementation 'com.google.dagger:dagger:2.16'

Сначала добавьте эти зависимости, затем нажмите Создать проект ( ctrl + f9 ярлыки).
После завершения перестройки проекта вы можете получить доступ к DaggerMainComponent .

Надеюсь, вам поможет

...