问题标签 [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 投票
1 回答
765 浏览

android - 一个 android:nohistory 标志被忽略

这是场景:

  1. 用户使用 Activity#1 安排闹钟(使用 androidAlarmManager服务),然后返回主屏幕。Activity#1 保留在堆栈中。

  2. AlarmRecieveronReceived()按计划调用:

    /li>
  3. Activity#2 ( Activity2) 成功启动。

    }

  4. 用户单击Activity#2的按钮 ( R.id.dismiss_button) 。finish()

  5. 系统按预期返回主屏幕,但 Activity#2 仍保留在堆栈中(当用户单击“ Recent Button ”时出现)

请注意,除了Intent.FLAG_ACTIVITY_NO_HISTORY为意图设置标志外,还指定了标志AndroidManifest.xml(我也分别尝试了它们中的每一个):

此外,该标志Intent.FLAG_ACTIVITY_NEW_TASK是必需的,因为 Activity#2 是从一个AlarmReceiver活动而不是另一个活动开始的。

0 投票
4 回答
957 浏览

android - 启动新活动并清除除家庭活动外的先前活动

我在下面有一系列活动启动:

首页活动->第二个活动->第三个活动->第四个活动

我想要实现的是,当第 3 个活动启动第 4 个活动时,它会从后台清除活动 2 和 3。因此,单击第 4 个活动返回到主活动

即用户应该仍然能够从第 3 个活动返回到第 2 个,但是一旦第 4 个活动启动,活动 2 和 3 就被删除了。

实现这一目标的配置是什么?

0 投票
1 回答
1068 浏览

android - android singleTask 活动不作为根?

我一直在阅读有关启动模式的文档,但有一件事我不明白。该文档说 singleTask 活动始终是堆栈的根:

相反,“singleTask”和“singleInstance”活动只能开始一个任务。它们始终位于活动堆栈的根部。此外,设备一次只能保存一个活动实例——只有一个这样的任务。

但是:如果您查看图 4中的部分文档,您会看到当 Activity 2 启动 Activity Y(将该任务置于前台)时,Activity Y 已经在任务的顶部,并且将在当前的顶部任务,而不是根。

我在这个模拟应用程序中尝试了这个场景,当我创建 singleTask 活动时,它总是会创建一个新任务。但是,如果唯一的实例已经存在,它会完成高于该实例的所有活动,因此唯一的实例可以是根(也是任务中的唯一活动)。

Activity Y 怎么会在 Activity X 之上的任务之上呢?

我失踪还有其他原因吗?

PS:我也不太了解Task和back stack之间的区别。

0 投票
1 回答
207 浏览

android - 如何正确地将活动与新任务联系起来?

我正在制作警报应用程序。我有 3 个活动:MainAlarmGame

它们在清单中声明:

Alarm从广播接收器调用活动:

或者来自 `Game 的 onBackPressed:

Game活动以类似的方式从警报活动中调用:

没有对Main活动的内部调用。

我正在努力实现的行为:

1) 活动AlarmGame应该显示在锁屏上,既解锁又用别针、涂鸦图案等锁定。它与活动中声明的标志一起使用,这需要 FLAG_NEW_TASK 意图

2)后退按钮应该从Game一个活动引导到另一个Alarm活动 3)如果home按下,当AlarmGame活动在堆栈顶部时,启动器图标应该重新打开它们,但不是Main,只要这些活动没有被应用程序逻辑完成。
虽然 1) 和 2) 工作流畅,但 3) 偶尔工作。有时它会返回应有GameAlarm活动。看起来如果这些活动由于缺乏资源而被系统杀死,启动器图标将导致Main活动。
如何实现所需的逻辑?

0 投票
1 回答
6586 浏览

android - FLAG_ACTIVITY_NEW_TASK 和 FLAG_ACTIVITY_CLEAR_TASK 行为怪异

我一直在测试意图标志,但我需要澄清一些事情。我的导航抽屉中有两个项目,单击时我会这样做,

哪些类是具有相同导航抽屉的活动。-由于各种原因没有使用片段-。在这些活动中,我有打开相同活动但没有意图标志的按钮。我想做的是使用默认的 Android 行为导航活动,但也根据导航项将它们堆叠在不同的堆栈中,例如选项卡的使用。

测试用例:

  1. 没有 clear-new 标志的 startActivity
  2. 带有 clear-new 标志的 startActivity
  3. 背部

我希望回到第一个活动,因为我用一个新任务开始了第二个活动,所以第一个应该留在第一个堆栈中)但我发现第一个已经销毁。

0 投票
0 回答
71 浏览

android - 活动移动到不同的任务

我有一个注册到共享意图 ( )的照片编辑应用程序。ACTION_SEND在以下情况下,我正在努力解决它的奇怪行为:

  1. 我从主屏幕启动我的应用程序并打开一张照片进行编辑
  2. 我按下主页按钮并启动一个画廊
  3. 我在图库中打开一张照片,按分享,然后选择我的应用
  4. 打开一个不同的实例。在任务概述中,我看到了我的独立应用程序任务和库任务
  5. 从共享意图启动的实例中,我开始了一个新活动(通过 startActivity)
  6. 当我按下新活动时,我会返回到我的独立应用程序!只有当我继续按下时,我才能到达我的共享启动实例,通过继续“支持”我回到画廊。

简而言之,似乎从图标开始的我的应用程序实例一旦发出ACTION_SEND意图就被附加到图库的任务中。

我在 Manifest 中没有关于任务管理的特殊设置。同样的行为发生在不同的画廊(包括谷歌照片)上,所以我猜他们会触发一个没有特殊标志的标准意图。

我尝试设置taskAffinity="",但这导致activities我的应用程序中的其他人在概览中有不同的任务..

这一切都非常令人沮丧..将不胜感激任何提示..

0 投票
0 回答
967 浏览

android - 如何在 Android Studio 中运行 Python3 命令?

我有一个自定义 gradle 任务(Exec 类型),它负责运行 Python3 命令,并且此任务发生在 buildProcess 之前。当我通过终端手动触发 assembleDebug 命令时,找到任务工作并成功构建。但是当我在 Android Studio 中手动单击 Build->Rebuild 或 Run->Run 时,会出现以下消息。

以下是我的毕业任务

任何帮助或建议将不胜感激。

0 投票
3 回答
2664 浏览

android - Lollipop:获取热门活动名称

如何在 Lollipop 中获取热门活动名称?

不再适用于 Lollipop:

从 MyActivity 中的 onResume 调用

这不是一个好主意,因为 MyApplication 可以在出错时被销毁(例如,NPE)。

0 投票
2 回答
185 浏览

android - 为什么删除所有活动后仍然存在android任务

由于 Android Developer Task 和 Backstack 主题声明

当所有活动都从堆栈中删除时,该任务不再存在。

那么为什么在删除所有活动后任务在概述屏幕中仍然可见。可能建议概览屏幕还包含对最近任务的某种引用,但不仅是当前正在运行的任务。我在 Android 开发者网站上找不到明确的解释,所以任何人都可以得到线索吗?

注意:还从活动中运行一个简单的通知服务(正如我所建议的,它将在当前任务中运行)将表明该服务在删除所有活动后仍然存在,但在刷掉任务后立即消失。

0 投票
1 回答
663 浏览

android - 单击桌面上的图标时,Android App会启动一个新应用

我是这样做的:

启动App进入一个名为A的内部activity-->锁屏-->等待半天确认应用已被回收-->解锁,显示未来的activity A-->按Home键-->点击桌面上的应用程序图标 --> 启动一个新应用程序 --> 按返回 --> 返回到 A。

我想知道它是怎么发生的?