这个问题在这里已经有了答案:WhatisaNullPointerException,andhowdoIfixit?(12个答案)关闭5年前。我在注入(inject)首选项时出错:无法找出问题。以下是我正在使用的一些类(class):AppModule类@ModulepublicclassAppModule{privatefinalMyApplicationapp;publicAppModule(MyApplicationapp){this.app=app;}@Provides@SingletonpublicContextprovideContext(){returnapp;}@Prov
通常在使用Dagger2和android时,我有以下内容:@Singleton@Component(modules={ApplicationModule.class})publicinterfaceApplicationComponent{voidinject(MainActivityactivity);}publicclassMainActivityextendsActivity{@InjectSharedPreferencesmSharedPrefs;@OverridepublicvoidonCreate(BundlesavedInstanceState){super.onCrea
我的任务是为现有的AndroidActivity编写单元测试,而编写的代码并未遵循单元测试(紧耦合)。场景:我有一个类StroageManager,它在MyActivity的onCreate方法中被实例化。@OverrideprotectedvoidonCreate(BundlesavedInstanceState){StorageManagerstoragemanager=GetStorageManager();//returnnewobjectofstroagemanagersuper.onCreate(savedInstanceState);........}为了通过Robole
我正在尝试在我的Android应用程序上使用dagger2从archandroid库中注入(inject)新的ViewModel。从我在这个样本上看到的https://github.com/googlesamples/android-architecture-components/tree/e33782ba54ebe87f7e21e03542230695bc893818/GithubBrowserSample我需要使用这个:@MustBeDocumented@Target(AnnotationTarget.FUNCTION,AnnotationTarget.CONSTRUCTOR,An
我对Daggers依赖注入(inject)还是很陌生。我正在开发一个使用Dagger2和Kotlin的新应用程序。我从一个用于构建的基本入门应用程序开始。在App.kt中,每个Activity都被自动注入(inject),到目前为止这非常酷。但是,我现在在实现Facebook和Google社交登录时遇到了问题。当应用程序尝试启动Facebook或Google登录Activity时,我收到错误消息:"NoinjectorfactoryboundforClass"我不能@Provides那些外部类,因为它们没有实现@Module注释。我的临时解决方案是在自动注入(inject)之前检查正在
我已经创建了一个抽象的BaseFragment类,它将被其他具体的Fragment类扩展。我想使用Koin在我的BaseFragment中注入(inject)ViewModel。这是我的BaseFragment:abstractclassBaseFragment(privatevalmViewModelClass:Class):Fragment(){valviewModel:VMbyviewModel()openlateinitvarbinding:DBfuninit(inflater:LayoutInflater,container:ViewGroup){binding=DataBi
我在将cookie注入(inject)login.php页面时遇到了一些问题。这是代码:LinearLayoutlLayout=(LinearLayout)findViewById(R.id.linearlayoutIdLogin);lLayout.setVisibility(View.GONE);//makemystandardlayoutinivisibleLinearLayoutlWeb=(LinearLayout)findViewById(R.id.webviewId);lWeb.setVisibility(View.VISIBLE);//makemywebviewvisibl
引导用户,尝试在这里了解Dagger的一些好处。假设我有以下内容MyActivity.java---------------publicclassMyActivity{@InjectMyImplicitClassmyImplicitClass;@Inject@Named("foo")MyExplicitClassmyNamedExplicitClass;...}MyImplicitClass.java------------publicclassMyImplicitClass{@InjectMyImplicitClass(MyExplicitClassmyExplicitClass){
我正在尝试使用Dagger2做一些事情,但仍然难以理解..我想在2个类中使用2个服务,SplashActivity和HomeActivity。服务依赖于NetModule,因为我想重用改造和okhttpclient提供。这是我的网络模块:@ModulepublicclassNetModule{@ProvidesRetrofitprovideRetrofit(@Named("BaseUrl")StringbaseUrl,OkHttpClientokHttpClient){returnnewRetrofit.Builder().baseUrl(baseUrl).client(okHttpC
我尝试使用mvp和RXAndroid创建带有dagger2的示例应用程序,一切正常但我无法注入(inject)Activity以下是我的AppComponent@Singleton@Component(modules={AppModule.class})publicinterfaceAppComponent{voidinject(Appapp);voidinject(MainActivityactivity);voidinject(ResponseServiceservice);voidinject(MainPresenterpresenter);}下面是我的模块@Modulepubl