Android意图 - 活动未恢复

时间:2014-04-12 22:26:16

标签: android android-intent

我无法恢复活动。

以下是发生的事情:

活动A调用活动B:

Intent intent = new Intent(A.this, B.class);
startActivity(intent);

然后活动B设置通知并调用活动A:

Intent intent = new Intent(this, MrpCastPlayerActivity.class);
intent.setAction(Intent.ACTION_MAIN);
intent.addCategory(Intent.CATEGORY_LAUNCHER);

PendingIntent pendingIntent = PendingIntent.getActivity(this, 0,
        intent, 0);

    android.support.v4.app.NotificationCompat.Builder notif = new NotificationCompat.Builder(this);
    notif.setContentIntent(pendingIntent)
            .setWhen(System.currentTimeMillis())
            .setSmallIcon(R.drawable.ic_launcher)
            .setContentTitle("TITLE")
            .setContentText("CONTENT")
            .setAutoCancel(true);
    notif.setOngoing(true);
  Notification notification = notif.build();
  NotificationManager notificationmanager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);

      notificationmanager.notify(0, notification);
      Intent intent2 = new Intent(B.this, A.class);
      startActivity(intent2);

问题是,当我点按通知时,它会打开活动B ,但它不会调用onResume来调用onCreate。 如果我使用moveTaskToBack(true),则不会启动intent2,而是调用onResume。 当我使用intent2打开活动A 时,似乎活动B 已完成。
有没有避免这种情况?

1 个答案:

答案 0 :(得分:0)

要恢复活动,您应该考虑在Intent添加标记。

回到此活动时,

在onResume()和onstart()方法中不执行任何操作,请尝试此操作

 intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); 

清单变更:

<activity android:name=".MyActivity"

              android:configChanges="keyboardHidden|orientation">

希望这有帮助