草庐IT

assisted-inject

全部标签

android - @Produces 之后@Injects?

我正在尝试通过Dagger2学习DI并将其应用到我们的产品中。用@Singleton注释的应用程序级别的东西足够简单(例如SharedPreferences)。在考虑我们的架构时,有几个本质上是异步的依赖项,我想象它们的范围在@ForSession。范围界定。我们的身份验证token/帐户信息,从AndroidAccountManager获取.在现有有效session的情况下可以是同步的。如果没有现有session和AccountManager则可能是异步的必须显示完整的登录流程。一旦我们有了有效的sessiontoken和session信息:提供Endpoint实现依赖关系,以便我们

android - 如何从 Google Assistant 发出局域网 HTTP 请求?

我想直接从我的Google智能助理向我局域网上的服务器(例如Node-red或Arduino)发出HTTP请求。我想重现thiswidget的行为然而,这不适用于谷歌助手。将IFTTT与webhook结合使用可使IFTTT网站从其服务器而不是我的私有(private)局域网中的手机在互联网上ping。我认为如果我将googleactions与api.ai和webhook一起使用,也会发生同样的情况。例如,这个应用程序,WakeOnLan可以LAN请求,但它不会接受像192.168.0.2:1880/test这样的链接,它只接受IP地址,但它适用于Google热词,OKGoogle。那么

android - Dagger 2 - 在构造函数中注入(inject)默认值

我如何注入(inject)这个构造函数:classSomeClass@Injectconstructor(dep:Dependency,context:Context,privatevalotherClass:OtherClass=OtherClass())我只提供了Dependency和Context...但是它说不能提供OtherClass。它应该需要这个类,因为它有一个默认值...我怎样才能让它工作? 最佳答案 我认为最简单的方法是同时注入(inject)OtherClass:类OtherClass@Injectconstru

android - Dagger 2 无法从子组件注入(inject)

我知道通常使用Kotlin应该没什么区别,但我遇到过奇怪的情况,其中@Named限定符在Kotlin中需要一个作用域。我有一个ViewHolderFactory允许我创建View类型的简单映射的类->View持有者类:@SingletonclassViewHolderFactoryImpl@Injectconstructor(privatevalviewHolderComponentProvider:Provider):ViewHolderFactory(mapOf(R.layout.view_errortoErrorViewHolder::class.java,R.layout.vi

android - Dagger 场注入(inject)测试

我正在使用Dagger2,在为我的类实现测试时,在模块中生成单例提供程序时遇到了一些问题。classSomeContentProviderextendsContentProvider{//thisshouldbenormalfooifrunbyapplication,//ormockedfooifrunbytests@InjectFoofoo;publicProvider(){Component.getComponent().inject(this);}}@ModuleclassProviderModule{@Singleton@ProvidesFooprovidesFoo(){ret

android - 我可以管理生命周期所有者,用 Koin 注入(inject) viewModel 吗?

我有一个Activity应用程序。我想将viewModel绑定(bind)到父fragment生命周期(FlowFragmentLogin),并与子fragment(CellFragment、InfoFragment、等)。因此,当我从FlowFragmentLogin移动到FlowFragmentMain时,调用了viewModelonCleared()。但我发现的唯一方法是在Activity及其Fragment之间共享viewModel:https://insert-koin.io/docs/1.0/documentation/koin-android/index.html并且无法

android - Roboguice 注入(inject)和 Provider 类

在RoboGuice示例中,有两种不同的注入(inject)方式@InjectprotectedLayoutInflaterinflater;@InjectprotectedProviderinflater2;它们有什么区别,需要选择什么方式,什么时候选择? 最佳答案 您需要提供者注入(inject)多个smth实例。例如,一行代表每个用户的操作。当您知道自己想要什么和想要的大小时,可以使用直接注入(inject)。Provider是一种结构,注入(inject)到您的代码中 关于and

java - 使用 RoboGuice 2 使用带有参数的构造函数注入(inject)对象

我第一次尝试Android版RoboGuice2(和Guice相关),现在卡住了。我一直无法找到如何执行此操作的示例,并且希望有人向我展示正确的方法并进行解释。我想在构造函数中@Inject一个将字符串作为参数的对象。示例如下:publicclassMyActivityextendsRoboFragmentActivity{@InjectMyObjectobj;publicvoidonCreate(BundlesavedInstanceState){super.onCreate();obj.print();}}publicclassMyObject{privateStringname;

android - Dagger 2 : Scoping and handling release/cleanup of provided injection

是否可以限定此范围并在模块或其他地方提供释放方法以防止内存泄漏。前任。我需要在onDestroy()中关闭一个数据库连接,但如果这可以由模块本身处理就好了。考虑以下示例*代码。*阅读容易出错的代码,风险自负模块@dagger.Module@lombok.NoArgsConstructorpublicclassPersistenceModule{@Provides@SingletonDatabaseProviderprovidesDatabaseHelper(Contextcontext){returnnewDatabaseProvider(context);}}Activitypubl

android - 为仪器测试注入(inject) espresso 规则的依赖项

androidstudio3.4.1dagger-android2.21我正在使用dagger-android将我的OKHttpClient注入(inject)到espresso规则中。但是还没有找到一种方法来做到这一点,我尝试了很多不同的事情。这是我正在使用的规则,我正在尝试将okHttpClient注入(inject)其中classOkHttpIdingResourceRule(application:Application):TestRule{/*Myattemptbelow-butnotworking*/privatevaltestApplication=Instrumenta