热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

使用Dagger的ApplicationComponent构建AndroidInstantApp

如何解决《使用Dagger的ApplicationComponent构建AndroidInstantApp》经验,为你挑选了1个好方法。

我目前正在尝试使用InstantApps,并希望将dagger包含在我的项目中.

我在设置应用程序AppComponent时遇到了问题.我的应用程序组件包括我的应用程序的所有功能匕首模块.

我基本上有:

包含我的Application类的One Base应用程序模块

每个Activity都有一个匕首模块的多个功能,所有功能都以Base作为依赖项.

一个应用程序模块和即时模块都导入所有功能和基本应用程序模块.

我想在添加Instant App模块之前弄清楚设置.

来自InstantApps文档和项目示例.似乎Application类需要在Base中.从Dagger文档,到设置匕首:

 DaggerYourAppComponent.create().inject(this);

应该包含在您的应用程序类中.但是,这似乎是不可能的,因为AppComponent需要引用所有功能匕首模块.

我的问题是:

我应该在哪里添加我的AppComponent匕首模块?

我应该将我的应用程序保存在app模块中而不是Base中吗?

使用Instant Apps围绕Dagger的任何GitHub回购或文档?

谢谢



1> Vishy..:

Instant应用程序非常支持Dagger2.您可以为每个要素模块和相应的Dagger提供程序类创建Component类,以显示每个要素模块的组件类实例.

每个模块组件类都可以为仅包含在该功能模块中的类声明注入方法.

此外,您还可以在基本模块中使用Application组件类进行应用程序范围的注入.

应用程序组件类可以在基础模块中包含的Application类中实例化,并通过应用程序类中的静态方法公开给其他功能模块.

以下是使用Instant应用程序注入Dagger2的示例代码,以使事情更加清晰. https://github.com/willowtreeapps/android-instant-apps-demo


推荐阅读
author-avatar
陈俊英围脖_687
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有