android– 通知不打开Acivity onCLick

android– 通知不打开Acivity onCLick,第1张

概述我想创建一个通知,点击它时应该打开活动.但是当我点击通知活动时没有打开.任何帮助将不胜感激.这是我的代码:NotificationManagernotificationManager=(NotificationManager)context.getSystemService(Context.NOTIFICATION_SERVICE);Intentintent=

我想创建一个通知,点击它时应该打开活动.但是当我点击通知活动时没有打开.
任何帮助将不胜感激.这是我的代码:

notificationmanager notificationmanager = (notificationmanager) context            .getSystemService(Context.NOTIFICATION_SERVICE);    Intent intent = new Intent(context, MessageReceivedActivity.class);    intent.putExtra("payload", payload);    intent.setAction(Long.toString(System.currentTimeMillis()));    intent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_top | Intent.FLAG_ACTIVITY_SINGLE_top);    PendingIntent pendingIntent = PendingIntent.getActivity(context, 0,            intent, PendingIntent.FLAG_CANCEL_CURRENT);    Notification.Builder notification = new Notification.Builder(context)    .setContentTitle("Message Received")    .setSmallicon(R.drawable.icon)    .setContentText(payload)    .setContentIntent(pendingIntent)    .setautoCancel(true);    Notification notificationn = notification.getNotification();    notificationmanager.notify(0, notificationn);

解决方法:

用这个:

Notification.Builder notification = new Notification.Builder(context).setContentIntent(getDialogPendingIntent(Text, intentname));private PendingIntent getDialogPendingIntent(String dialogText,            String intentname) {        return PendingIntent.getActivity(                context,                dialogText.hashCode(),                new Intent(ACTION_DIALOG)                        .putExtra(Intent.EXTRA_TEXT, dialogText)                        .addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)                        .setAction(intentname), 0);}

getDialogPendingIntent(Text, intentname) : intentname=com.yourProject.exrta.yourIntentname

如果需要,您可以更改addFlags或putExtra.

如果使用Intent name调用不起作用,请使用类似的类,它必须工作:

Intent notificationIntent = new Intent(MainActivity.this, TestActivity.class);// set intent so it does not start a new activitynotificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_top |                            Intent.FLAG_ACTIVITY_SINGLE_top);PendingIntent intent = PendingIntent.getActivity(MainActivity.this, 0, notificationIntent, 0);notificationmanager notificationmanager = (notificationmanager) MainActivity.this                        .getSystemService(Context.NOTIFICATION_SERVICE);Notification.Builder notification = new Notification.Builder(MainActivity.this)                .setContentTitle("Message Received")                .setSmallicon(R.drawable.ic_launcher)                .setautoCancel(true)                .setContentIntent(intent);Notification notificationn = notification.getNotification();notificationmanager.notify(1, notificationn);
总结

以上是内存溢出为你收集整理的android – 通知不打开Acivity onCLick全部内容,希望文章能够帮你解决android – 通知不打开Acivity onCLick所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址: http://outofmemory.cn/web/1113154.html

(0)
打赏 微信扫一扫 微信扫一扫 支付宝扫一扫 支付宝扫一扫
上一篇 2022-05-29
下一篇 2022-05-29

发表评论

登录后才能评论

评论列表(0条)

保存