草庐IT

constructor-injection

全部标签

android - Dagger 2 Android 应用程序组件缺少注入(inject)方法

我用新发布的Dagger2.10和dagger.android包尝试了一个小的Android项目。只有MainApplication类应该被Dagger注入(inject),没有其他任何依赖:构建.gradledependencies{...//Daggercompile'com.google.dagger:dagger:2.10'compile'com.google.dagger:dagger-android:2.10'annotationProcessor'com.google.dagger:dagger-compiler:2.10'//Fixforincompatiblelibr

Android单元测试: ActivityMonitor waitForActivityWithTimeout return NULL, getActivity永不返回,INJECT_EVENTS权限错误

我正在使用Google推荐的Android测试框架:ActivityInstrumentationTestCase2。我在RANDOM测试运行中一直遇到以下错误,但持续死亡。这意味着有时所有测试都通过了(很高兴!),但很多时候由于这三个错误中的任何一个而随机失败。令人沮丧,让我对测试结果没有信心。为了详细描述这些问题,我提供了我的测试类的简化伪代码和下面的三个问题。两个测试用例彼此独立。publicclassFirstActivityTestextendsActivityInstrumentationTestCase2{privateFirstActivitymActivity;pri

android - 如何在 Android 上将输入事件注入(inject)自己的应用程序?

我正在寻找一种方法,如何从特定应用程序中的代码将触摸或键盘事件等输入事件注入(inject)到自己的应用程序中。NOT进入Android操作系统或其他需要签名级权限android.permission.INJECT_EVENTS或root设备的应用程序b/c,我必须避免这两种情况。我正在寻找一种在没有任何提升权限的情况下在非root设备上运行的代码。我在基于以下概念的代码方面取得了一些进展:Viewv=findViewById(android.R.id.content).getRootView();v.dispatchTouchEvent(e); 最佳答案

java - 错误 : [Dagger/MissingBinding] [dagger. android.AndroidInjector.inject(T)] Dagger

我想制作一个包含一个主要Activity和多个fragment的简单项目。在这里,我在一项Activity中有两个fragment,我想将演示者注入(inject)登录fragment,但它不起作用。我的错误在哪里?主应用程序.javapublicclassMainApplicationextendsDaggerApplication{privatestaticApplicationComponentcomponent;@OverridepublicvoidonCreate(){super.onCreate();Utils.init(this);}publicstaticApplica

android - 在没有root的情况下在Android中注入(inject)事件

一段时间以来,我一直在尝试弄清楚如何将触摸/键盘事件注入(inject)Android设备(在您的应用程序内部和外部)。我发现了一个没有root权限的应用程序:https://play.google.com/store/apps/details?id=com.vmlite.vncserver有人知道他们是怎么做到的吗? 最佳答案 如果你想在没有root的情况下在android应用程序上注入(inject)触摸事件:你可以使用Instrumentation类,https://developer.android.com/referenc

Android Dagger 2 和 MVP 在注入(inject)的对象中注入(inject)

我想使用具有MVP模式的Dagger2。所以我有这种情况,每个View都有自己的Component例如MyFragment有一个这样的组件:@PerFragment@Component(dependencies=ActivityComponent.class,modules=MyFragmentModule.class)publicinterfaceMyFragmentComponent{voidinject(MyFragmentfragment);}在MyFragmentModule中,我提供了一个Presenter和一个将在MyFragment中使用的模型@Modulepublic

java - 房间持久性 : Entities and Pojos must have a usable public constructor

我正在尝试通过RoomPersistence库将数据库添加到我的Android应用程序,但出现此错误:error:EntitiesandPojosmusthaveausablepublicconstructor.Youcanhaveanemptyconstructororaconstructorwhoseparametersmatchthefields(bynameandtype).Triedthefollowingconstructorsbuttheyfailedtomatch:User(int,java.lang.String,java.lang.String,int,int,in

android - 临时构造函数注入(inject)与依赖注入(inject)框架

好的,所以我决定仔细研究如何在我的项目中实现junit测试。然后我偶然发现了一篇文章,其中写到使用依赖注入(inject)框架(例如Dagger2和Koin)来简化测试是多么重要。我试着阅读-DI究竟是什么。我将其理解为解决A类依赖对象(例如B类和C类)的一种方式。我现在通常做的是:在Activity中我创建了ViewModel。ViewModel需要访问数据,所以对于数据我有SomeRepository类。然后我通常通过ViewModel构造函数或使用属性注入(inject)传递SomeRepository。据我了解,如果我没记错的话,这也是某种类型的依赖注入(inject)(如果我

javascript - 在 WebView 中注入(inject) JavaScript onclick() 事件

我有一个Android应用程序,运行一个加载特定页面的WebView,也是该应用程序的一部分我想在WebView页面中生成一个按钮onclick()事件如何将JavaScript文件加载到Android资源中的WebView页面?谢谢。 最佳答案 终于找到答案了...webView.loadUrl("javascript:(function(){document.getElementById('buttonClick').click();})()");这里是完整的源码importandroid.app.Activity;import

android - 房间 kotlin : Entities and Pojos must have a usable public constructor. 卡在这个错误上

我有两个错误错误:用@Relation注释的字段不能是构造函数参数。这些值是在构造对象后获取的。错误:用@Relation注释的字段不能是构造函数参数。这些值是在构造对象后获取的。我有两张table。一个是任务表,另一个是子任务表。对于每个任务表实体,都有一些子任务表实体。所以我试图从单个任务中获取所有任务和子任务列表道:@Query("Select*fromTaskTable")fungetTasks():List任务模型:classTaskModel(@EmbeddedvartaskTable:TaskTable,@Relation(parentColumn="id",entity