问题标签 [launchmode]

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

android - 谷歌使用单任务启动模式购买应用程序?

我已将应用内购买添加到游戏中,并且它们运行良好,直到您在进行应用内购买时按下主页按钮。应用程序需要处于 singleTask 模式(它是一个 Unity 项目)。

因此,从文档中获取 google 的示例项目,一切正常。添加

然后在应用内购买时按下主页按钮时出现问题,如下所示:

  • 如果您按下购买按钮,然后它会将您带到 google play 的购买屏幕上说“这是一个测试订单,您不会被收费”,然后您在这里按 home,当再次加载应用程序时它会显示:

购买错误:labResult:IAB 结果中的数据为空(响应:-1002:收到错误响应)

  • 如果您进行购买,直到显示“购买成功”,然后在那里按下主页按钮,您将得到同样的错误,您没有在游戏中获得应用内产品,下次您尝试购买时它说

购买错误:labResult:无法购买商品(响应:7:商品已拥有)

所以很明显它不会被消耗(直到下次启动应用程序):

你们是如何处理这些问题的?或者你正在处理它们?

0 投票
1 回答
121 浏览

android - 在启动模式中使用 singleTask

我将 singleTask 属性添加到 MainActivity(A) 以避免多次加载活动。在其他活动(B)在MainActivity(A->B)上之后,如果我通过按主页按钮返回主屏幕并重新启动应用程序,则没有B(A->B->HOME->A )

这里有一个答案,说要添加 FLAG_ACTIVITY_CLEAR_TOP | FLAG_ACTIVITY_SINGLE_TOP 每次调用 A Activity。

但是,我在 Manifest 文件中有一个 Intent 数据方案,应用程序应该由该方案启动。

请帮我...

0 投票
2 回答
121 浏览

android - 具有单实例启动模式和新线程的活动

我真的有点困惑。当它说

具有singleInstance启动模式的活动使用单例模式,该实例将成为新任务的根活动

当它说new task时,是否意味着启动活动将在新线程中执行???或者android系统只是使用标志来控制内部的活动导航,主线程中的数据结构

0 投票
1 回答
1052 浏览

android - 何时使用 launchMode = "singleInstance" 的示例

我正在寻找何时使用的具体示例launchMode="singleInstance"。我到处阅读,都说很少有场合应该使用它。所以我很惊讶我从来没有看到过例子!

我找到的最接近的解释是在这里它说:

[它] 应该只用在完全作为一个活动实现的应用程序中

但如果是这样的话,我想知道为什么它在官方 Android 文档中从未如此简洁地表达过。

所以我的问题是:

  1. 这真的是唯一singleInstance应该使用的情况吗?
  2. 是否存在上述情况不足以成为使用的理由singleInstance
  3. 使用singleInstance是个好主意的具体示例
  4. 不当使用的不良副作用singleInstance,例如这个问题
0 投票
1 回答
239 浏览

android - Android Activity 的启动模式

假设我有一个任务,我A, B & C Activities分别有。然后我开始一个新的活动 D,它的启动模式是单实例。

现在,我想知道任务级别会发生什么?是否会保留相同的任务但仅包含Activity D或创建新任务?

0 投票
1 回答
491 浏览

android - Android:恢复 singleTask 活动

我在端口上有一个 UDP 套接字的活动。如果我按下 Home 按钮,活动将进入后台,将调用OnPause()OnStop()方法。现在我想在收到一些 UDP 数据包时恢复我的活动。阅读我理解的其他帖子我必须:

  1. 将活动声明为android:launchMode="singleTask"(或singleInstance
  2. 然后,当我想恢复活动时:

这个解决方案对我不起作用。调用startActivity(intent)不会显示我在前台的活动,onResume()也不会被调用。

以下标志可以完成这项工作,但我不想清除任务并重新启动新任务。

0 投票
1 回答
128 浏览

android - 如何也从“最近的应用程序”插槽中删除原始意图?

我的应用在清单中有启动模式属性 =“singleTop”,并使用 getIntent() 处理它启动的意图。处理意图后,它调用 setIntent(new Intent()); 抹去原意。如果再次创建活动(例如,如果管理方向更改),这可以避免活动处理相同的意图。

当我按下后退按钮时活动被破坏时,我只是遇到了问题:事实上,当我点击它的“最近的应用程序”插槽时,活动被再次创建并且我再次处理了原始意图。如果我从主屏幕再次调用该应用程序,则没有原意。

注意:

  • 该应用程序必须在“最近的应用程序”菜单中可见;
  • 活动可以接收进一步的意图(它是“singleTop”)并在 onNewIntent() 中处理它们;
  • 如果活动被破坏,它可以有意图地重新开始;如何也从“最近的应用程序”插槽中删除原始意图?
0 投票
1 回答
60 浏览

android - 如何在堆栈顶部启动另一个包?

我必须像这样应用堆栈:

A->BC->D

X->Y

在 Y 我想使用 getLaunchIntentForPackage("package") 到 D,但是我到了 A。我应该使用什么启动模式等?如果可能的话,我想将 singleTask 用于 ABCD。同样,当在 D 中时,我按下 home 并再次通过 A 图标启动,然后根据启动模式,我没有到达 D(我想要的),但到达 A。DCB 被清除。

我尝试了很多东西,但我就是不明白它是如何工作的。我似乎没有得到相应的行为。

0 投票
2 回答
546 浏览

android - 用户按下主页按钮时Android应用程序关闭

我不想在使用按下主页按钮时关闭我的应用程序。但在某些设备上,android 系统会关闭我的应用程序。这是场景:

  • 场景 X: (I WANT): Activity A->Activity B-> Activity C - PRESS HOME BUTTON- Launch application - User see Activity C
  • 场景 YActivity A->Activity B-> Activity C - PRESS HOME BUTTON- Launch application - User see Activity A

这是问题所在:我的应用程序使用了超过 80mb 的内存。某些设备不会在主页上关闭应用程序 (LG G2),某些设备会在主页上关闭应用程序。(三星注2)可能是因为内存使用率高吗?

PS:我尝试了所有的 Launchmode 参数。

0 投票
0 回答
126 浏览

android - Android Backstack 示例?

任何人都可以告诉我,意图标志或启动模式的真实示例是什么。请只给我这些标志在现实生活中的使用,而不是像 Activity A 使用标准意图调用 Activity B 这样的示例。给出现实生活中的例子,例如:

make payment在电子商务应用程序中,用户在支付成功后再次访问屏幕。在这种情况下,需要一种重定向用户以返回主屏幕的方法。这就是androidFLAG_ACTIVITY_SINGLE_TOPFLAG_ACTIVITY_CLEAR_TOPintent标志派上用场的地方。我们今天考虑的用例是有多个活动 A、B、C、D、E 等,并且用户多次浏览这些活动 - A > B > C > D > E。在 E 之后,我们需要返回到 B ,但删除整个活动堆栈,以便只保留 A 和 B。这是FLAG_ACTIVITY_SINGLE_TOP+的现实生活使用FLAG_ACTIVITY_CLEAR_TOP

在哪个条件下:

  1. 只有 Single_Top Launch 模式或 Single_Top Flag 是最好的,它的实际用途是什么?
  2. 只有 Single_task Launch Mode 或 New_task Flag 是最好的,它的用途?
  3. 只有 Single_instance 启动模式是最好的,它的用途?
  4. 只有 Clear_Top Flag 是最好的,它的用途?