相关疑难解决方法(0)

尽管Dagger可以生成点文件,但它无法创建对象图

在现有的应用程序中,我正在努力设置Dagger(1.0.1).它被配置为使用ProGuard,但我禁用它进行此测试-dontobfuscate.

当我启用dagger-compiler时,它能够成功生成带有依赖关系图的点文件,但是当我删除编译器并在Release模式下构建应用程序时,它会在启动时崩溃,抱怨它无法创建对象图.

java.lang.RuntimeException: Unable to start activity 
  ComponentInfo{com.corp.myapp/com.corp.myapp.ui.activity.MainActivity}: 
  java.lang.IllegalStateException: Errors creating object graph:

No injectable members on com.corp.myapp.core.services.ConnectionMonitor. Do 
  you want to add an injectable constructor? required by 
  com.corp.myapp.core.services.ConnectionMonitor 
  com.corp.myapp.ui.activity.MyAppBaseActivity.connectionManager

No injectable members on com.corp.myapp.ui.crouton.CroutonManager. Do you want 
  to add an injectable constructor? required by 
  com.corp.myapp.ui.crouton.CroutonManager 
  com.corp.myapp.ui.activity.MyAppBaseActivity.croutonManager

No injectable members on com.corp.core.assembler.ResourceAssembler. Do you want 
  to add an injectable constructor? required by 
  com.corp.core.assembler.ResourceAssembler 
  com.corp.myapp.ui.activity.MyAppBaseActivity.resourceAssembler
Run Code Online (Sandbox Code Playgroud)

我看到MyAppBaseActivity它和生成的点文件中的依赖关系CroutonManagerConnectionMonitor显示,所以根据这个评论,我希望这个工作.AFAIK如果出现问题,应该通过我用来生成点文件的编译器启用的构建来检测它.


更新:

我之前曾说过

在调试模式下它永远不会失败

但是在进一步测试之后并不是真的:在调试 …

android dependency-injection proguard dagger

5
推荐指数
1
解决办法
5078
查看次数

标签 统计

android ×1

dagger ×1

dependency-injection ×1

proguard ×1