【问题标题】:task affinity for singleInstance activity?单实例活动的任务亲和性?
【发布时间】:2019-10-14 14:05:54
【问题描述】:

我想知道 singleInstance 活动的默认任务亲和性是什么?

由于每个 singleInstance Activity 在新任务中都作为根 Activity 打开。 并且不需要声明 android:taskAffinity。

请参阅我已阅读 Android 活动的开发人员指南和文档。

https://developer.android.com/guide/components/activities/tasks-and-back-stackhttps://developer.android.com/guide/topics/manifest/activity-element.html#aff

<activity android:name=".MainActivity"
                  android:launchMode="singleInstance"
        >
</activity>

我想知道 taskAffinity - singleInstance 活动作为根驻留在其中的任务的字符串文字。

【问题讨论】:

  • taskAffinity 用于指定 Activity 喜欢运行的任务的名称。当您使用 FLAG_ACTIVITY_NEW_TASK 有意图时,Activity 被放入由 taskAffinity 定义的任务中。
  • 是的@Rajnishsuryavanshi 我同意你的观点,因为我们知道如果没有定义关联,那么默认关联等于清单中定义的包名称。但是在 singleInstance 活动的情况下,它默认在新任务中启动,那么这个新任务的亲和力值是多少?那是我的问题。希望它会有所帮助。
  • 我会推荐你​​看这个视频。这将对您有所帮助。 youtube.com/…

标签: android android-activity launchmode taskaffinity


【解决方案1】:

默认的taskAffinity 是来自清单&lt;package&gt; 标记的应用程序包名称。

这适用于所有活动,无论启动模式是什么。

这就是为什么很多开发者在使用特殊启动模式singleInstancesingleTask时遇到问题的原因,因为taskAffinity胜过启动模式,所以有时这些活动不会在新任务中启动,而是简单地启动到现有任务好像启动模式是“标准”。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2013-07-26
    • 1970-01-01
    • 2011-10-06
    • 1970-01-01
    • 2018-02-19
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多