问题标签 [android-task]

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

android - 深度链接活动中的意图接收

我在正确的任务堆栈方面遇到了一些问题,并在深度链接实现期间将其置于最前面......我有一个Activity这样的声明:

它有launchMode="standard"并且没有父级,因为它Activity可以从应用程序中的许多地方启动:本机按钮或从WebView's. 即使在几乎每个实例的底部都放置了相关文章,因此它可能会自称(新实例)并且每篇文章都应该出现在新的“窗口”中

现在:当我的应用程序在后台运行并且在应用程序管理器中可见时,深层链接会ArticleSingleActivity在其他活动之上触发而没有问题。Intent 包含这些标志:

当应用程序不在后台堆栈中(可以说被用户删除)ArticleSingleActivity时,启动时没有带上至前标志,一切都像往常一样开始,但我发现了一些小的不当行为。当我导航到另一个ArticleSingleActivity(例如从底部的相关或Activity从侧面菜单到任何其他)时,然后按主页并尝试打开相同的深层链接 url,然后应用程序就会被带到前面。它不显示链接的文章,但是Activity当应用程序“归巢”时它在顶部。断点也没有触发onCreateonActivityReenter甚至onNewIntent. 在我看来,系统“记得”它在后台堆栈中启动了Acticity匹配此 url,因此它只是将整个应用程序带到前面,但从Activity堆栈中不正确(没有像上面那样的 bring_to_front 标志)。

当我什至无法为Intent系统提供的自定义标志设置自定义标志或进行任何Intent签入时,我该怎么处理这种行为,因为堆栈上的onCreate任何活动都没有调用它?Activity

0 投票
0 回答
26 浏览

android - android应用程序的返回行为不正确

我的 android 应用程序有一些奇怪的错误:在某些情况下,当它完成时,“返回”行为是不正确的。为了更清楚:

  • 我打开任何安卓应用程序,例如计算器。
  • 我按下主页按钮并从启动器启动我的应用程序。
  • 在某些情况下,当我关闭我的应用程序时,我不会返回主屏幕。相反,我看到了之前打开的应用程序(在我们的例子中是计算)。

什么可能导致这种行为?我的一个活动的应用程序以标准标志(“新任务”、“无历史记录”、“无最近”)开始。

0 投票
5 回答
2509 浏览

android - 单击通知时如何保留当前的返回堆栈(或任务)?

在我的应用程序中,我创建了一个启动Details Activity的通知。我想将此活动添加到当前任务(或回栈)的顶部。例如,我希望应用程序任务(回栈)的行为如下:

在此处输入图像描述

但我明白了:

在此处输入图像描述

我没有使用FLAG_ACTIVITY_CLEAR_TASKFLAG_ACTIVITY_NEW_TASK标志。我应该怎么办?

编辑:第一张图片只是一个例子。我认为问题的标题是完全明确的。我想在当前堆栈顶部添加Details Activity,而不是从新任务开始。

这就是我创建的方式PendingIntent

这是清单:

0 投票
3 回答
259 浏览

android - Android 库后退按钮

有一个安卓库。像这样的工作流程:

A1->A2-A3->图书馆活动->A3

当用户单击物理时,我需要隐藏库活动back button。此外,图书馆活动保存了一些数据,因此我无法destroyfinish()图书馆活动。

A1->A2->A3->lib--->返回上一个A3

如果用户按back button,我想跳过该library活动并跳转到A2A3不破坏图书馆活动,因为图书馆活动保存了我需要再次使用它的数据。

0 投票
3 回答
100 浏览

android - Android回栈

我在 Android A、B、C、D 中有一个包含多个活动的应用程序。我有一个关于后堆栈的问题。

A->B->C->D 这是一个正常的顺序。

我的问题是:当我在活动 D 中按下后退按钮时,我必须转到活动 B,而不是返回活动 C。由于 ActivityC 有一些我想保存的 imageView,我不想使用 noHistory 来破坏 ActivityC。可以这样做

A1->B1->C1->D1

后堆栈应该是: D1->B1->A1 。C1 保存了一些 imageView,如果 C1 再次启动,C1 中的 imageView 将包含相同的图像。是否可以只修改 ActivityC 中的代码?

谢谢你

0 投票
1 回答
35 浏览

android - GcmTaskService: What's an "in-flight task" documentation mentions?

The documentation for GcmNetworkManager::cancelTask https://developers.google.com/android/reference/com/google/android/gms/gcm/GcmNetworkManager"

says

Cancel a task, specified by tag. Note that a cancel will have no effect on an in-flight task.

What's an "in-flight" task ?

0 投票
0 回答
196 浏览

android - GcmTaskService 和线程

  1. 是否onRunTask在不同的线程上运行?这在https://developers.google.com/android/reference/com/google/android/gms/gcm/GcmTaskService的文档中没有明确解释。或者还有其他我应该看的文件吗?

  2. 文档说:

对于每个服务,具有相同标签的两个任务永远不会同时执行。如果在现有任务仍在运行时新计划的任务到达,则新任务将被丢弃。此外,不同的任务可以同时调度,如果它们的调度重叠,则每个任务都在单独的线程中调用。在调度多个任务时确保线程安全由您决定。

我对这部分感到困惑:

此外,不同的任务可以同时调度,如果它们的调度重叠,每个任务都在单独的线程中调用。

这仍然是指具有相同标签的任务,还是指具有不同标签的两个任务?

我在想它指的是具有不同标签的两个任务,因为它说Per service, two tasks with the same tag will never execute concurrently.

换句话说,我的理解是永远不会有两个相同标签的任务同时执行,但是两个不同标签的任务可以同时执行。这个对吗?

0 投票
5 回答
784 浏览

android - 从任何带有标志的活动返回 MainActivity

我想从任何活动返回 MainActivity。例如,我的活动堆栈: A - B - C - D. A (MainActivity) 位于底部, D 位于堆栈顶部。

当我使用android:launchMode="singleTask". 我可以按照我的预期在任何活动中回到 A。

但是当我使用标志FLAG_ACTIVITY_NEW_TASK(没有launchMode =“singleTask”)时,它不能按预期工作,它会打开一个新的活动。堆栈是: A - B - C - D - A 不像文件中写道:

FLAG_ACTIVITY_NEW_TASK
在新任务中启动活动。如果您现在正在启动的 Activity 的任务已经在运行,则该任务将被带到前台并恢复其最后状态,并且该 Activity 在 onNewIntent() 中接收新意图。

这会产生与上一节中讨论的“singleTask”launchMode 值相同的行为。

有人知道原因吗?谢谢。

0 投票
0 回答
189 浏览

android - 当根活动处于单任务模式时如何重新打开顶级活动

有活动 A 和 B。活动 A 是应用程序的入口点。

我不想在系统中使用我的应用程序执行多个任务,因此我在 singleTask 模式下启动了活动 A。

A 启动 B(B 在标准模式下启动)。

当用户从活动 B 中按下主页按钮,然后通过单击应用程序图标从主屏幕再次启动应用程序时,他会进入活动 A。但我希望他进入活动 B。

这样做的正确方法是什么?

0 投票
0 回答
22 浏览

android - 以编程方式重新安装应用程序对其任务堆栈有什么影响?

如果我有一个名为“商家应用程序”的应用程序,它为自己下载更新 .apk 文件,然后启动中间人“更新程序应用程序”来安装此更新,安装过程会清除与商家应用程序关联的任务堆栈吗?

我要求确定从更新程序应用程序重新启动商家应用程序时可能包含的意图标志。目前我正在考虑添加

FLAG_ACTIVITY_NEW_TASK | FLAG_ACTIVITY_CLEAR_TASK

但是如果重新安装过程清除了所有与商家应用相关的任务,那么我认为我不需要任何标志,对吧?