Dagger 导航从未如此简单 | Android Studio 4.1

AI权益加码!Claude Code、Cursor等20+工具免费用! 购周边限时加赠Coding Plan Lite,畅享主流AI工具!学习进阶更高效! 阅读详情

前言

在使用 Dagger 的项目中,您是否因为要弄清楚 Dagger 的依赖关系而产生疑惑?依赖项来自 @Inject 修饰的构造器、@Binds 还是 @Provides 修饰的方法?它有限定符吗?要搞清楚这个并非易事。

难道不能一键获取相关信息甚至得到更多内容吗?当然可以!

最新的 Android Studio 4.1 版本 (目前在 Canary 预览版发布渠道可以下载) 为我们带来了一个新的 “间距图标” (在编辑器和代码行号之间的图标,如下图所示),通过点击这个图标,我们可以轻松地在 Dagger 的关联代码间进行导航,包括依赖项的生产者、消费者、组件、子组件以及模块。您同样可以在 Find usages 中获取相同的信息。

△ 在 Android Studio 中新增的 Dagger 导航支持

正如您所看到的,在 Android 应用中 Dagger 关系的导航从未如此简单。新版本 Android Studio 将支持一键精确查找提供依赖项方法的功能。

特别说明: 当前的功能将会在即将发布的 AS Canary 版本中得到优化。命名和图标可能会更改。在下文 “后续规划” 部分获取更多信息。

实践

在 Android Studio 4.1 Canary 7 之后,您可以在使用 Dagger 的项目中看到一个新的间距图标:

△ Android Studio 中新的 Dagger 间距图标

此 Canary 版本的标准如下:

  • 向上箭头的图标: 提供类型的地方 (即依赖项来自何处)
  • 向下箭头的图标: 类型被当作依赖项使用的地方

让我们通过 GitHub 上的示例应用 Dagger branch (dev-dagger) of the architecture-samples,来演示新功能的使用。

  • Dagger branch (dev-dagger) of the architecture-sampleshttps://github.com/android/architecture-samples/tree/dev-dagger

了解依赖项来自哪里

在一个使用 Dagger 注入的类中,如果您在依赖项上点击带有向上箭头的间距图标,您将跳转到使用 Dagger 注解提供对应类型的方法。

在下面的例子中,TasksViewModel 依赖了 TasksRepository。点击间距图标即可跳转到 AppModuleBinds 类中提供 TasksRepository 对象的 @Bind 方法:

△ 了解依赖项来自哪里

同样支持限定符

如上所述,如果使用了限定符提供依赖项,此功能将会帮您精确跳转到提供方法处。

DefaultTasksRepository 依赖了被限定符修饰的 TasksDataSource。点击间距图标将跳转到 AppModule 中使用限定符提供对应类型的方法。

△ 同样支持限定符

依赖项在哪里被使用

当您有一个使用 Dagger 注解提供依赖项的方法时,您可以点击带有向下箭头的间距图标来跳转到依赖项的使用处。如果该依赖项被多个消费者使用,您可以在列表中选择目标进行跳转。

在我们的项目中,DefaultTasksRepository 使用在了不同的 ViewModels 中,具体是哪些呢?您可以通过点击提供方法的间距图标来了解 (此处使用 @Binds):

△ 了解依赖项在哪里被使用

了解组件使用了哪些子组件

在子组件中,点击间距图标可得知哪些组件使用了该子组件:

△ 了解子组件被哪个组件使用

Find Usages

您可以在 Android Studio 使用 Find Usages 功能来获得同样的信息。目前该功能仅可在 .java 文件中使用。在 Android Studio 的后续版本中将会支持 Kotlin 文件。

如果您在另一个使用 Dagger 的 Java 项目中尝试,则会看到类似下面的内容:

△ Find usages 关于 Dagger 关联代码的新功能
点击【Android高级工程师进阶学习】加入我们的圈子领取资料和我们一起吧学习交流吧!

  • Android进阶学习全套手册

  • Android高级架构师进阶知识体系图

  • Android对标阿里P7学习视频

  • BATJ大厂Android高频面试题

在这里插入图片描述

AndroidStudio 4.1 Android Studio provides the fastest tools for building apps on every type of Android device. 立即下载

相关推荐

android-studio4.1 安装版

android-studio4.1 安装版

Android Studio4.1.1安装包,初学者必备版本

Android开发的IDE,最好用的莫过于Android Studio4.1.1是它的一个非常稳定的版本,可以运行我开发的所有项目。

Android Studio 4.1.1最新版64位安装包

Android Studio 4.1.1最新版64位安装包,如果官网被墙在这可以直接下载,方便快捷,下载打开就直接安装,安装过程可能会有点慢

Android studio 4.1 安装包两种下载方式

原始下载路径 https://redirector.gvt1.com/edgedl/android/studio/install/4.1.0.19/android-studio-ide-201.6858069-windows.exe 百度云下载地址 链接:https://pan.baidu.com/s/1Ik7g-iSCixrh_KkzCV0l5w 提取码:kyim

蓝色的天空的博客 1万+

AndroidStudio4.1正式版本可用的下载链接

先上链接 工作中着急使用的同学们可以直接拿去用 https://r4—sn-ni57dn76.gvt1.com/edgedl/android/studio/install/4.1.0.19/android-studio-ide-201.6858069-mac.dmg 如何得来的 因为平时比较关注Android相关IDE、开发组件等内容的更新,所以,每天刷一遍developer官网是上班之后必做的功课,每天期待一点惊喜,或许,程序猿的快乐就是这么简单吧 今天,例行“检查更新”的功课,发现AndroidStud

大世界,小人物 1万+

【免费下载】 Android Studio 4.1 安装包下载指南:开启高效Android开发之旅

Android Studio 4.1 安装包下载指南:开启高效Android开发之旅 【下载地址】AndroidStudio4.1安装包下载指南 Android Studio 4.1 安装包下载指南本仓库提供了Android Studio 4.1安装包的两种下载方式,方便开发者快速获取并安装最新版本的Android开发...

gitblog_06524的博客 2003

Android Studio4.1.2的下载安装及SDK的配置

一、安装Android Studio

Harriet的博客 6489

Android Studio 4.1Dagger 导航更新

在使用 Dagger 的项目中,您是否因为要弄清楚 Dagger 的依赖关系而产生疑惑?依赖项来自 @Inject 修饰的构造器、@Binds 还是 @Provides 修饰的方法?它有...

谷歌开发者 540

重磅!Android Studio 4.1发布:可直接运行安卓模拟器、支持Dagger导航和TensorFlow Lite模型...

作者 | Android 开发者博客译者 | 王强策划 | 李俊辰近日,Android Studio 4.1 版本正式发布,本文翻译自 Android 开发者博客。今天我们很高兴地发布了...

这个时代,作为程序员可能要学习小程序 918

Android Studio 4.1发布:可直接运行安卓模拟器、支持 Dagger 导航和 TensorFlow Lite 模型...

点击上方“逆锋起笔”,公众号回复pdf领取大佬们推荐的学习资料 作者 | Android 开发者博客 译者 | 王强 策划 | 李俊辰 近日,Android Studio...

code小生 1089

android studio导航,Dagger 导航从未如此简单 | Android Studio 4.1

在使用 Dagger 的项目中,您是否因为要弄清楚 Dagger 的依赖关系而产生疑惑?依赖项来自 @Inject 修饰的构造器、@Binds 还是 @Provides 修饰的方法?它有限定符吗?要搞清楚这个并非易事。难道不能一键获取相关信息甚至得到更多内容吗?当然可以!Android Studio 4.1 版本为我们带来了一个新的 "间距图标" (在编辑器和代码行号之间的图标,如下图所示),通过...

weixin_31800911的博客 437

Android Studio 4.1.1正式版

Android Studio Windows IDE 安装版 (64-bit),最新版4.1.1下载。

Android Studio 4.1 最新稳定版

Android Studio 4.1 稳定版,国内下载,下载后直接解压任意目录即可使用,32位系统执行bin目录里的studio.exe,64位系统执行studio64.exe。喜欢的拿去!

android studio4.1.1图标_Android Studio 4.1Dagger 导航更新

在使用 Dagger 的项目中,您是否因为要弄清楚 Dagger 的依赖关系而产生疑惑?依赖项来自 @Inject 修饰的构造器、@Binds 还是 @Provides 修饰的方法?它有限定符吗?要搞清楚这个并非易事。难道不能一键获取相关信息甚至得到更多内容吗?当然可以!最新的 Android Studio 4.1 版本 (目前已经在稳定版渠道发布) 为我们带来了一个新的 "间距图标"...

weixin_32322859的博客 280

Dagger-导航从未如此简单---Android-Studio-4-1(1)

小编这些年深知大多数初中级Android工程师,想要提升自己,往往是自己摸索成长,自己不成体系的自学效果低效漫长且无助。因此我收集整理了一份《2024Android移动开发全套学习资料》,初衷也很简单,就是希望能够帮助到想自学提升又不知道该从何学起的朋友。一个人可以走的很快,但一群人才能走的更远!不论你是正从事IT行业的老鸟或是对IT行业感兴趣的新人都欢迎加入我们的的圈子(技术交流、学习资源、职场吐槽、大厂内推、面试辅导),让我们一起学习成长!资料⬅专栏获取远!

2401_85729556的博客 1078

android studio无障碍权限实现模拟点击_Android Studio 4.1发布:可直接运行安卓模拟器、支持 Dagger 导航和 TensorFlow Lite 模型...

点击上方“逆锋起笔”,公众号回复pdf领取大佬们推荐的学习资料 作者 | Android 开发者博客 译者 | 王强 策划 | 李俊辰 近日,Android Studio 4.1 版本正式发布,本文翻译自 Android 开发者博客。今天我们很高兴地发布了稳定版的 Android Studio 4.1,其中包含针对常见的编辑、调试和优化用例的一系列特性。此版本的一大主题是...

weixin_39968640的博客 525
上一篇: 开发12年Android“高级”工程师经验谈:在职场混的好,你要知道的四件事!
下一篇: 面试需要刷题的看过来!2017-2020史上最全 Android面试资料集合(大厂面试题+面试经验=成功)
Android725
博客等级 码龄6年 1705粉丝 350原创
评论
成就一亿技术人!
拼手气红包6.0元
还能输入1000个字符
 
 条评论被折叠 查看
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值