问题标签 [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.
android - Intent.FLAG_ACTIVITY_NEW_TASK 正在做什么我们认为它应该做什么?
看起来我们在网上发布的每个教程都提到FLAG_ACTIVITY_NEW_TASK
如果我们正在启动的活动当前没有在任务中运行,则启动一个新任务。但似乎使用FLAG_ACTIVITY_NEW_TASK
不会总是创建一个新任务,它只是如果没有任务可用于我们需要运行的活动,则创建一个新任务,就像我们BroadCastReceiver
使用内部上下文从 a 启动活动时一样onReceive()
。
根据网上所有的教程,
假设我们的 BackStack 中有以下活动-
现在如果我们想启动一个新的 Activity D,那么它应该在一个新任务中启动,但这似乎没有发生,并且活动 D 是在同一个任务中启动的,我们有最终的 backstack
谁能澄清一下?
我知道设置 taskAffinity 将强制创建一个新任务,但这带来了另一个问题:
试试自己:
假设我们启动了两个Activity:
然后我们再次使用 android:taskAffinity** 启动另一个 Activity,所以现在我们有了**
现在我们再次开始A-B from C
,所以现在我们的 BackStack 看起来像:
</p>
现在,问题是如果我们再次尝试从 B 启动 C(从任务 CAB),什么也没有发生,C 将无法启动(我不知道为什么?)
android - TimerTask 用于在初始屏幕中重新连接
我有一些启动请求的 splashScreen,其中数据被加载到应用程序中。在我发起这些 splashScreen 请求之前,我想检查连接。这部分工作正常,但如果应用程序无法访问互联网,我想每 2 秒检查一次连接。如果建立连接,我想取消Timer/TimerTask
并执行Timer
调用下的代码(隐藏重新连接progressBar和Text并再次调用服务器api)。但是,如果我在下面运行此代码,应用程序将崩溃,而 Logcat 中不会出现任何错误。但是我可以看到从 TimerTask 重新连接日志仍在运行。
我试图移动api.splashScreen(this)
并hideReconnectViews()
进入 ReconnectCheck 类并通过上下文调用它们,但这会抛出异常:
android.view.ViewRoot$CalledFromWrongThreadException:只有创建视图层次结构的原始线程才能触摸其视图。
任何想法为什么我的解决方案不起作用?
SplashScreen 活动中的代码:
重新连接检查类:
android - 从具有 FLAG_ACTIVITY_NEW_TASK 的活动返回导航到具有 FLAG_ACTIVITY_NEW_DOCUMENT 的活动不起作用
我在使用意图标志时遇到了一个奇怪的问题。我会尽量解释清楚。
我的应用中有 3 个活动。仪表板活动、文档活动和子活动。我已经使用默认意图标志启动了仪表板活动。现在,我想在最近的屏幕中将文档活动作为一个单独的活动打开,因此,我从仪表板开始了带有FLAG_ACTIVITY_NEW_DOCUMENT
标志的文档活动。现在从文档活动中,FLAG_ACTIVITY_NEW_TASK
由于某些要求,我已经打开了子活动。直到现在一切都很完美。
现在,当我从子活动返回时,它不会返回到文档活动,而是直接进入仪表板活动。但是,如果我使用默认意图(否FLAG_ACTIVITY_NEW_TASK
)启动子活动,它工作得很好(即从子活动返回到文档活动)。
非常感谢解决此问题的任何帮助。
PS:在开始这些相应的活动时,我无法避免这些标志。
谢谢!
android - 我怎样才能只运行同一个应用程序的一个进程?
我正在开发的 Android 应用程序存在问题,当我在一个特定活动中按下“向上”操作栏按钮时,系统会运行同一应用程序的 2 个进程。
更具体地说,让我们调用该活动 Z 及其父项,如清单中所声明的那样,Y。如果我从活动 X 启动活动 Z 并按下向上操作栏按钮,活动 Y 将启动,然后 I'将有 2 个进程在运行:一个带有活动 Y,另一个带有 Z。
我已经尝试为该活动设置不同的启动标志,但问题仍然存在。
这个有问题的活动与应用程序中的其他 5 个活动具有相同的任务相似性,但它似乎是唯一导致这种行为的活动。
这是我的清单的一个片段,其中的活动与导致问题的活动具有相同的亲和力,还有一个截图证明有 2 个应用程序正在运行。
显现
顶部的流程显示活动 Z,底部的流程显示活动 Y。
android - 如何从具有不同过程的意图启动其他应用程序?
实际上,我正在尝试通过 Uri 意图从“应用程序 A”启动“应用程序 B”,但是当我最小化应用程序时,它会在与“应用程序 A”相同的过程中打开,它在后台仅显示一个应用程序“应用 A" & "应用 B" 正在该过程中加载。
从“App A”启动“App B”的代码
应用内 B 清单文件
它启动了第二个应用程序 B,但是当我最小化时过程将相同,我不会在后台看到两个应用程序,它仅在后台显示应用程序 A 并在其中加载应用程序 B。
如何获得 App A 和 App B 的两个独立进程?
android - android,同时将两个活动放在堆栈上
我的应用程序主启动器是LoginActivity
在大多数情况下,最后MainActivity
从我的应用程序中的所有操作可以启动的地方开始
这是“正常”情况
但是,当有人从共享上下文中启动应用程序或通知时,LoginActivity
会将他直接重定向到负责处理该特定场景的活动......
这样,当用户在手机上按“返回”时,活动堆栈将返回登录,而不是主
我如何告诉登录活动将两个活动放在堆栈上以创建这个“假”回历史
android - 连接/断开 USB BroadcastReceiver 时隐藏/取消隐藏应用程序
我的应用程序只有MainActivity
一个ImageView
.
BroadcastReceiver
作品。当我连接 USB 时显示 Toast 消息。
现在,我需要启动我的应用程序最小化并只显示应用程序连接了 USB 电缆。
android - 为应用程序中的所有活动应用 android:excludeFromRecents
有没有办法设置android:excludeFromRecents="true"
应用程序中的所有活动,而不是为每个活动指定?
android-intent - 重新排序前后如何修复应用程序进入后台
我目前设法允许用户在两个不同的活动组之间切换(让我们说 4 个活动类 A/B 组和 X/Y 组)并按FLAG_ACTIVITY_REORDER_TO_FRONT
标志切换,但我注意到有一些奇怪的行为:
从返回时如何防止应用程序隐藏到后台B2
?
我注意到它只发生在同一个班级(B
并且B2
是同一个班级),如果我使用B
and C
,它不会出现这样的问题,我想知道背后的原因是什么。
X ->(start) Y
也是重现它的关键。
我尝试使用应用程序级自定义实例列表来检测B2
'sonPause()
和's isFinishing()
,startActivty()
但即使使用'sB
也会始终调用B
's ,这让我认为这不是正确的解决方案。正确的解决方案应该弄清楚如何防止应用程序隐藏到后台。onCreate()
FLAG_ACTIVITY_REORDER_TO_FRONT