问题标签 [android-safe-args]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票
0 回答
96 浏览

android - 导航抽屉上的导航组件安全参数问题

我已经使用具有两个片段的Android N导航组件实现了导航抽屉

1.家庭片段

2.产品片段

我创建了另一个片段Search Fragment作为全局操作,它具有编辑文本和一个按钮

问题 :-

当我单击按钮时从搜索片段返回到主页片段,搜索查询作为安全参数,这工作正常,但是在主页片段中接收参数之后,当我使用导航抽屉打开产品片段并按返回按钮然后搜索查询将再次被发送到家庭片段

我的代码:-

nav_graph.xml

MainActivity.kt

HomeFragment.kt

搜索片段.kt

产品片段.kt

nav_graph 图片

提前致谢

0 投票
0 回答
41 浏览

kotlin - 导航组件:如何将安全参数从主片段传递到承载主片段的主活动中的导航抽屉?

我想从主要活动的主要片段中获取安全的参数,以将它们提供给导航抽屉。如何从主片段或任何其他片段中调用的 API 在 NavController.OnDestinationChangedListener 中获取参数。

在此处输入图像描述

0 投票
2 回答
635 浏览

android - 更新了导航框架并出现错误 - “getActionId 不会覆盖任何内容”

我已将导航框架从 2.3.5 更新到 2.4.0-alpha01 版本。我将它与 Safe Args gradle 插件一起使用。'getActionId' overrides nothing更新后,我开始收到'getArguments' overrides nothing错误。

我认为这是因为 Safe Args在生成 Direction 类时不正确地覆盖了actionIdarguments字段。NavDirections

例如,这是正在生成的:

这是应该生成的:

如何让 Safe Args 生成正确的构建器类?

0 投票
1 回答
355 浏览

android - Android SafeArgs - 无法导入生成的导航方向类

我是来报告我的问题的因为错误是。错误基本上是,我无法导入在导航、方向中生成的类,当我编写整个路径或单击导入时,它只是将整个路径放在类所在的位置并且不知道那是什么is 但在它后面承认那里有一个类,但不能导入它。是不是很奇怪?我很感激你能给我的任何解决方案,谢谢!

我的软件版本是:

  • 安卓工作室:4.2.1
  • KMM 插件:0.2.5(202-1.5.10-834-IJ)-3

GitHub 示例:https ://github.com/0rangeFox/KMM-Sample

0 投票
0 回答
66 浏览

android - Android 项目构建在 Bitrise 上失败并出现 safeargs 异常

我的 Android 应用程序在模拟器上正常运行,但在 Bitrise 上构建没有成功。

它抛出这个异常:

我的 gradle(应用程序)上有以下插件

gradle.properties 中的这些行

我想知道这个例外的原因是什么。

0 投票
1 回答
677 浏览

android - 在我的情况下,如何修复“无法从当前目的地目的地找到导航操作/目的地”错误?

我正在使用bottom navigation.

在切换的屏幕中,还有一个打开dialog fragment.

我也为此使用了导航。

这是因为,一旦dialog完成,data必须将其传送到打开对话框的屏幕。

我用safe args这个。

但我得到了与标题相同的错误。

我知道错误在哪里,但我不知道它发生的确切原因。

根据 Stack Overflow 上的搜索,有人和我有同样的问题,但由于情况不同,这似乎不是一个确切的解决方案。

导航图

主要活动

对话片段

0 投票
1 回答
219 浏览

proguard - 使用 ProGuard 和 NavigationComponent 安全参数进行混淆

我正在尝试使用 R8 编译器和 Proguard 规则来缩小我的应用程序大小。问题是 Safe Args 扩展在 NavArgsLazy.kt 中使用反射,如下所示:

当我尝试运行该应用程序时,我收到一个异常,指出在创建使用 Safe Args 的片段时方法 fromBundle 不存在。我知道 ProGuard 的反射问题,但我无法解决此问题,我无法排除给我此错误的类,因为我无法访问生成的文件并排除从 NavArgs 接口扩展的所有文件不起作用任何一个。

0 投票
2 回答
135 浏览

android - 使用安全 args 插件在 kotlin 中传递 args

我想通过 kotlin (android studio) 中的安全 args 传递 args。无论我尝试什么,我总是在 onCreateView中收到此错误。要求参数是红色的。在 alt+enter 上,它想创建新功能,但这不是我需要的。有谁知道可能是什么问题以及如何解决它。

编辑:进口

进口 1

gradle 中的依赖

0 投票
0 回答
152 浏览

android - 引起:java.lang.ClassNotFoundException:在路径:DexPathList 上找不到类“com.example.androidwebapi.network.Movies.Result”

我在将数据从一个片段传递到另一个片段时遇到问题。我通过 Safe Args 插件发送数据对象,例如自定义 parcelable。有两个嵌套数据类,当我在 navigation.xml 中将 argType 设置为该数据类的路径时,使用点表示法 (Movies.Result),应用程序崩溃并从标题中显示此错误。它仅适用于 $ 符号 (Movies$Result),但问题在于片段中的其他数据。

数据期望 Movies.Result 但找到Movies$Result。无论错误如何,应用程序都能正常工作,但看到红色下划线很麻烦。如何摆脱这个问题?

MoviesModel.kt

导航.xml

DetailsFragment.kt

这些代码行会导致问题:

其中参数电影期望 Movies.Result 但找到 Movies$Result

项目build.gradle

模块:build.gradle

0 投票
1 回答
71 浏览

android - 使用导航组件在动态功能模块之间传递数据

我最近开始探索 android 中的动态功能模块。我只是想出了如何使用导航组件在模块之间导航,但我无法弄清楚或找到任何关于如何使用安全参数在模块之间传递数据作为参数的资源/指南(我什至不确定是否可能)。如果有办法我可以在模块之间传递数据(movieId:Int),我会很感激这些建议。