问题标签 [android-jetpack]

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 回答
1891 浏览

android - 有没有办法停止当前正在运行的 WorkManager 任务的执行?

WorkManager API Android
我已经编写了 WorkManager 代码来在后台执行一些工作。
它是 OneTimeRequestBuilder。我想取消正在运行的 WorkManager 任务的执行。
我尝试使用以下代码取消 WorkManager

我尝试了另一种方法cancelAllWorkByTag function ,即使这样也没有用。

根据文档

使用给定标签取消所有未完成的工作。请注意,取消是一项尽力而为的策略,已经执行的工作可能会继续运行。

尽力而为策略不会取消当前正在执行的工作。
有没有办法强制停止当前执行?

PS 不能分享代码

0 投票
1 回答
4225 浏览

android - Android Jetpack:设置 LiveData 时 RecyclerView 未更新

所以我有一个简单的实现,在 a 中显示用户列表,并在asRecyclerView中查询该列表。ViewModelLiveData

问题是 UI 没有更新以显示最新列表 - 称为users- 即使在观察列表时也是如此。我现在只是设置了一个演示用户列表。

这是我的视图模型:

我的 ViewModel 的附加片段:

PS这UsersAdapter是一个平常的RecyclerView.Adapter

我已经确保调用setValue我的用户列表来调用观察者,因此我不确定这里缺少什么。我的适配器是否设置错误?

0 投票
1 回答
4566 浏览

android - Android Jetpack Navigation:如何在 OnNavigatedListener 中获取目的地的片段实例?

我在 android 开发中使用 Jetpack 导航组件(一个活动,许多片段)。

我想在OnNavigatedListener下面获得目的地的片段实例。

可能吗?

更新:场景

我想在每次导航的活动中获取片段的属性(或方法的返回值)。

例如,

0 投票
1 回答
9151 浏览

android - 每个实体的 Android MVVM ViewModel 和存储库?

对于 Android 架构组件和 MVVM 模式,我有一些疑问。

基于网络上的大多数示例,通常有简单的示例。

  1. 有一个房间的实体
  1. 有一个 DAO
  1. 有一个存储库
  1. 视图模型

现在让我们扩展它,并在旁边useruser_accessuser_actions例如,有 3 个表。

问题:

  1. 对于 Room 中的每张桌子,我都会创建实体。我应该Dao为每个实体(userDao、userAccessDao、userActionsDao)设置 3 个还是只是一个普通AppDao类?

  2. 存储库也是如此。整个应用程序的一个存储库或每个实体的存储库(RepositoryUser、RepositoryUserAccess、RepositoryUserActions?

  3. 如果我的应用有一个主要活动和多个片段,我应该为每个片段创建一个 ViewModel 吗?

0 投票
3 回答
14917 浏览

android - 以编程方式设置 NavGraph

在我的活动布局中,我有以下内容NavHostFragment

我的问题是如何以编程方式设置 navGraph?如何在my_nav_host_fragment实例中转换视图NavHostFragment实例?

0 投票
3 回答
2441 浏览

android - Room - 检查最近是否获取了数据

在官方应用程序架构指南中是存储库的一个例子。检查数据库中是否存在对象以及是否新鲜:

任何想法如何为 DAO 实现该功能(hasUser)?

0 投票
5 回答
16244 浏览

android - 是否可以在android的新导航组件中发送字符串或整数以外的参数

新的导航组件很棒!但是我想在我的片段之间发送“长”变量。

在导航图文件中写这个是有效的:

写这个不会编译:

目前,我似乎被迫将它们解析为字符串格式。它工作得很好,但对我来说似乎很奇怪,对于这样一个基本架构,我不能使用诸如 long 或 byte 或 short 之类的原始类型。我错过了什么吗?未来会开发这种功能集吗?

0 投票
2 回答
2511 浏览

android - 如何使用依赖注入在 ViewModel 中注入构造函数

我正在尝试在https://developer.android.com/jetpack/docs/guide上实现示例。这解释了应该如何构建 tan android 应用程序。

当我使用相同的代码时,出现以下错误。

我可以弄清楚这个错误与


当我为 ViewModel 编写默认的零输入构造函数时,出现以下错误。

我无法弄清楚这个错误的原因以及如何解决它。

0 投票
1 回答
1965 浏览

android - 返回到“导航架构组件”中的同一选项卡时,嵌套片段的状态会丢失

我正在探索上个月在 Google I/O 2018 中引入的“导航架构组件”概念。

假设我有一个带有底部导航视图和一个“片段”来托管所有片段的活动:-

我的底部导航视图中有 2 个操作/选项卡,它们将分别显示 FragmentA 和 FragmentB。FragmentB 有一个嵌套的(子)片段 FragmentC,可以从 FragmentB 打开。

在我的 Activity 类中,我使用“setupWithNavController()”函数将底部导航视图与导航控制器链接起来。(包含在“androidx.navigation.ui”包中的 Kotlin 扩展功能):-

一切都按预期正常工作。

但是如果用户在 FragmentC 中导航到 FragmentA 并返回到同一个选项卡,那么他只会得到 FragmentB 而不是 FragmentC。当用户返回同一选项卡时,它在底部导航中是一种常见模式,它应该显示他正在查看的最后一个子/嵌套片段。

我知道如果我们有自己的片段事务,我们可以处理这个问题,但是如何在“导航架构组件”域中解决这个问题?

0 投票
3 回答
12764 浏览

android - 如何使用 material.BottomNavigationView 设置 Jetpack 导航

我无法使用com.google.android.material.bottomnavigation.BottomNavigationView设置导航组件,它给出了错误。

在此处输入图像描述

这是我尝试使用的代码

当我打开NavigationUI类时,我注意到它只接受旧的android.support.design.widget.BottomNavigationView但我想使用新的com.google.android.material.bottomnavigation.BottomNavigationView类。有什么想法吗?

[2019 年 14 月 11 日更新]

这是一个错误,已在 Android Gradle 插件(~3.2.0-rc-01 和 3.3.0-alpha-04)中修复。您可以在以下链接中查看问题跟踪器:https ://issuetracker.google.com/issues/110692942