我想在我的应用程序中实现身份验证,所以我想在应用程序类中获取当前登录的用户,我遵循GithubBrowserSample来开发我的应用程序,但是我对使用匕首注入非常陌生,我在如何将authRepository注入到我的应用程序类中时有些困惑。
class App : Application(), HasActivityInjector {
@Inject
lateinit var dispatchingAndroidInjector: DispatchingAndroidInjector<Activity>
override fun onCreate() {
super.onCreate()
if (BuildConfig.DEBUG) {
Timber.plant(Timber.DebugTree())
}
AppInjector.init(this)
}
override fun activityInjector() = dispatchingAndroidInjector
}
我尝试添加
@Inject
lateinit var authRepository: AuthRepository
在应用程序类和AppModule中
//I already have functions that provide everything the repository needs
@Singleton
@Provides
fun provideAuthRepository(
appExecutors: AppExecutors,
db: AppDatabase,
trainersService: TrainersService,
sessionDao: SessionDao,
tokenInterceptor: TokenInterceptor
): AuthRepository {
return AuthRepository(
appExecutors,
db,
trainersService,
sessionDao,
tokenInterceptor
)
}
但它会引发未初始化的属性访问异常
希望您可以按照github示例方法帮助我实现这一目标。