【发布时间】:2026-01-14 22:15:01
【问题描述】:
从我读到的内容看来,这样的代码似乎需要应用程序在线程中运行,直到通知触发。我需要在稍后的日期和时间触发通知,以便用户看到通知就像任何其他通知一样,然后单击它并打开一个活动,传递一些数据以便应用知道该做什么。
如何在应用程序不一直运行的情况下让此通知在几天后触发?
我是否使用等待来完成此操作?
long millis = 60000;
myNotification.wait(millis);
这是我的代码,它会立即触发
NotificationCompat.Builder mBuilder =
new NotificationCompat.Builder(getActivity())
.setSmallIcon(R.drawable.star)
.setContentTitle("How was " + me.getString("EventTitle") + "?")
.setContentText("Click here to leave your review");
Intent resultIntent = new Intent(getActivity(), SetupActivity.class);
PendingIntent resultPendingIntent =
PendingIntent.getActivity(
getActivity(),
0,
resultIntent,
PendingIntent.FLAG_UPDATE_CURRENT
);
mBuilder.setContentIntent(resultPendingIntent);
int mNotificationId = me.getInt("EventID");
// Gets an instance of the NotificationManager service
NotificationManager mNotifyMgr =
(NotificationManager) getActivity().getSystemService(getActivity().NOTIFICATION_SERVICE);
// Builds the notification and issues it.
mNotifyMgr.notify(mNotificationId, mBuilder.build());
【问题讨论】:
-
不,你通常会使用
AlarmManager。 -
好的,AlarmManager 也会产生同样风格的通知,就像你在安卓手机上下拉屏幕顶部时看到的推送通知?
-
AlarmManager安排PendingIntent执行。通常,您会将PendingIntent设为创建通知的BroadcastReceiver。
标签: java android notifications