使用 Safe Args 进行屏幕转换和不使用它们有什么区别?

What is the difference between using Safe Args for screen transitions and not using them?

Safe Args

我参考了 JetPack 导航组件相关文档来为屏幕转换创建底部导航。

但是在那link里面说:

  • The recommended way to navigate between destinations is to use the Safe Args Gradle plugin.
  • Safe Args is recommended both for navigating as well as passing data between destinations.

看到这里,我有几个问题。

仅使用 navaigation component 和使用 safe args 之间是否存在性能差异?

当然,safe args甚至还有屏幕间传递数据的能力。但除此之外,仅在屏幕转换(导航)方面有什么不同吗?

Safe Args 仅生成您可以自己编写的代码,遵循 guide to navigating by ID and manually passing a Bundle of arguments - 它不会影响您的应用在运行时的性能或屏幕转换的工作方式。