以下代码段:
Intent notificationIntent = new Intent(context, MainFragmentActivity_.class);
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent pendingIntent = PendingIntent.getActivity(context, 0, notificationIntent,
PendingIntent.FLAG_UPDATE_CURRENT);
在MainFragmentActivity
@Override
protected void onNewIntent(Intent intent) {
super.onNewIntent(intent);
boolean isSyncAction = intent.getBooleanExtra(NotificationsSyncModule.SYNC_ACTION, false);
}
因此,当我单击推送通知的项目时,活动MainFragmentActivity
已开始。
很好。
但是现在我要没有,在到达推送通知时单击推送通知自动启动活动。 我该怎么做?
答案 0 :(得分:2)
我相信您应该能够做到
context.startActivity(...)
使用您的Service / IntentService(无论正在处理您的推送通知)。
希望这会有所帮助!
还请注意,应用程序在推送通知中随机“跳出”可能会导致UX不太出色-当然,这完全取决于您的用例。我也相信,从Android Q开始,这将是不可能的。
答案 1 :(得分:1)
您只是在建立通知后就开始活动
Intent Intent = new Intent(context, MainFragmentActivity_.class);
Activity activity = (Activity) context;
activity.startActivity(intent)