gpt4 book ai didi

android - 通知中的 Intent 不起作用

转载 作者:塔克拉玛干 更新时间:2023-11-02 22:37:51 26 4
gpt4 key购买 nike

我的通知是一项服务 (service.java),该服务所做的是在首选项屏幕中的复选框首选项被选中时启动电池电量通知。现在不起作用的是在 中输入的 Intent MainActivity 点击通知。这是代码

if(mprefs.getBoolean("notification_a", false)==true){
notificationBuilder = new NotificationCompat.Builder(context);

notificationBuilder.setOngoing(true);
notificationBuilder.setContentTitle("Battery Stats Informations");
notificationBuilder.setContentText("Carica residua: " +level+"%" + " " + "Temperatura: " +temperature+ "°C");
//notificationBuilder.setTicker("Informazioni batteria");
notificationBuilder.setWhen(System.currentTimeMillis());
notificationBuilder.setSmallIcon(R.drawable.icon_small_not);
Intent notificationIntent = new Intent(context, MainActivity.class);
PendingIntent contentIntent = PendingIntent.getBroadcast(context, 0, notificationIntent, 0);
notificationBuilder.setContentIntent(contentIntent);

notificationIntent.setFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP | Intent.FLAG_ACTIVITY_SINGLE_TOP);

Notification not=notificationBuilder.build();

mNotificationManager.notify(SIMPLE_NOTIFICATION_ID,not);
} else {
mNotificationManager.cancelAll();
}

Intent Intent notificationIntent = new Intent(context, MainActivity.class 不起作用。有什么帮助吗?

最佳答案

如果您打算在单击通知时启动 Activity :使用:

PendingIntent contentIntent = PendingIntent.getActivity(context, 0, notificationIntent, 0);

Retrieve a PendingIntent that will start a new activity, like calling Context.startActivity(Intent).

代替:

PendingIntent contentIntent = PendingIntent.getBroadcast(context, 0, notificationIntent, 0);

Retrieve a PendingIntent that will perform a broadcast, like calling Context.sendBroadcast().

关于android - 通知中的 Intent 不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18331026/

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