1

所以我有一个非常简单的应用程序。

活动一
活动 2(亲和力:mytask - launchMode=standard)
活动 3(亲和性:mytask - launchMode=standard)
广播接收器
服务
  1. BR 收到意图
  2. 启动服务
  3. 服务发挥它的魔力
  4. 启动活动 2,该活动将在一段时间后启动活动 3。

现在我观察到的是,当活动 2 启动时,我看到我的应用程序有两个进程 ID。但是,如果我从 Activity1 -> 活动 2 导航。我只看到一个进程 ID。

我的问题是:

  1. 指定任务亲和性会导致在 Android 中创建新进程吗?
  2. 当活动具有任务关联性时,从服务启动活动与常规方案有何不同?
4

1 回答 1

0

关于问题1:

使用默认配置,指定任务亲和性不会导致在 Android 中创建新进程,除非您指定属性 android:process 与默认配置不同。

关于问题2:

从服务启动activity,你必须在intent中设置NEW_TASK标志,如果存在具有相同affinity的任务,要启动的activity将在系统中查找,如果存在,则activity将在该任务中启动,否则它将在新任务中启动。

于 2014-05-12T04:07:58.273 回答