gpt4 book ai didi

Android - 将用户发送到 Activity 的 GCM 推送通知不会导致 onCreate 调用

转载 作者:行者123 更新时间:2023-11-29 00:31:33 27 4
gpt4 key购买 nike

我能够创建推送通知,并将用户发送到我想要的任何 Activity,但我注意到无论何时用户登陆该 Activity,都不会调用 onCreate 函数。

应该是这样吗?如何设置才能调用Activity的onCreate?

这是我的 Activity :

public class QuestionActivity extends BaseListActivity 
{
@Override
public void onCreate(Bundle savedInstanceState)

下面是通知的生成方式:

    Intent notificationIntent = new Intent(context, MainActivity.class);
if ( notification_type != null && notification_type.equals("question"))
{
notificationIntent = new Intent(context, QuestionActivity.class);
}
else
if ( notification_type != null && notification_type.equals("plan"))
{
notificationIntent = new Intent(context, TopicActivity.class);
}

// set intent so it does not start a new activity
notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);
PendingIntent intent = PendingIntent.getActivity(context, 0, notificationIntent, 0);
Uri defaultSound = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION);

Notification notification = new NotificationCompat.Builder(context)
.setContentTitle(title)
.setContentText(message)
.setContentIntent(intent)
.setSmallIcon(icon)
.setLights(Color.YELLOW, 1, 2)
.setAutoCancel(true)
.setSound(defaultSound)
.build();

notificationManager.notify(0, notification);

谢谢!

最佳答案

您正在使用的标志 Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP 意味着如果 Activity 已经在当前任务中运行,那么将使用旧的现有 Activity ,而不是启动该 Activity 的新实例。在这种情况下,不会调用 onCreate,因为 Activity 已经存在。

关于Android - 将用户发送到 Activity 的 GCM 推送通知不会导致 onCreate 调用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/15375926/

27 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com