@InstallIn(SingletonComponent::class)은Dagger Hilt에서 사용되는 어노테이션입니다. 이 어노테이션은의존성 주입(Dependency Injection)모듈이 어떤DI 컨테이너에 포함되어야 하는지를 지정합니다. 이는 의존성의 수명주기와 관련이 있습니다.
위 예시에서ApiModule은애플리케이션 클래스에 바인딩되어 있으므로 애플리케이션이 존재하는 동안 계속 존재합니다. 그러나 Hilt가 Retrofit 인스턴스를 제공할 때마다 새로운 객체를 생성합니다. 그러나@Singleton을 추가하면 매번 동일한 Retrofit 인스턴스를 반환합니다:
Dagger Hilt는Dagger2를 기반으로 하며, Android 프레임워크에서 자주 사용되는 DI 컴포넌트와 스코프를 기본적으로 제공하여 초기 DI 환경 구축 비용을 크게 줄입니다. 또한 Jetpack의ViewModel에 대한 의존성 주입도 간단하게 구현할 수 있습니다.아직은알파 버전이지만, 앞으로 더 발전할 것으로 기대됩니다 23.
#스하리1000명프로젝트, Иногда сложно разговаривать с иностранными работниками, правда? Я сделал простое приложение, которое помогает! Вы пишете на своем языке, а другие видят это на своем. Он автоматически переводит в зависимости от настроек. Очень удобно для легкого общения. Посмотрите, когда будет возможность! https://play.google.com/store/apps/details?id=com.billcoreatech.multichat416
이 예제는 paging 을 배우는 데, 도움이 되는 코드입니다. 물론 jetpack compose을 이해한다는 조건이 선행되기는 합니다. 예제 코드가 jetpack compose로 되어 있는 거라서, 그 구조는 아직도 이해가 잘 안 되기는 하지만... 따라 하기를 해 볼 수 있어서 도움이 되었습니다.
스크롤 샘플
이 샘플을 보시면 이해가 되실 겁니다. 이 코드의 구조에 대한 이야기는 다음에 해 보겠습니다. 실제 적용된 앱은 다음 링크에서 받아 보세요.
#billcorea #운동동아리관리앱 🏸 Schneedle — незаменимое приложение для бадминтонных клубов! 👉 Матчевая игра: записывайте результаты и находите противников 🎉 Идеально подходит для любого места: в одиночку, с друзьями или в клубе! 🤝 Если вам нравится бадминтон, обязательно попробуйте
Зайди в приложение 👉 https://play.google.com/store/apps/details?id=com.billcorea.matchplay