我无法恢复活动。
以下是发生的事情:
活动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 已完成。
有没有避免这种情况?
答案 0 :(得分:0)
要恢复活动,您应该考虑在Intent
添加标记。
在onResume()和onstart()方法中不执行任何操作,请尝试此操作
intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP);
清单变更:
<activity android:name=".MyActivity"
android:configChanges="keyboardHidden|orientation">
希望这有帮助