Android 通知立即出现
我正试图安排一个通知与所需的时间,并取消下面的代码我所需的时间,如果10秒后,但我不知道为什么它会立即显示通知,我做了什么错误?如果我在任何地方出错,并且我使用BlueStacks Emulator进行测试(内置版本4.4.2 Api 19),请纠正我的错误 通知立即出现 在最后一行中调用Android 通知立即出现,android,Android,我正试图安排一个通知与所需的时间,并取消下面的代码我所需的时间,如果10秒后,但我不知道为什么它会立即显示通知,我做了什么错误?如果我在任何地方出错,并且我使用BlueStacks Emulator进行测试(内置版本4.4.2 Api 19),请纠正我的错误 通知立即出现 在最后一行中调用notificationManager.notify()时,它会立即显示通知 我假设您想使用AlarmManager显示通知,但您不太了解它的功能。AlarmManager用于安排要广播的Intent。意图可用
notificationManager.notify()
时,它会立即显示通知
我假设您想使用AlarmManager
显示通知,但您不太了解它的功能。AlarmManager
用于安排要广播的Intent
。意图
可用于执行各种任务,例如启动活动
或服务
。据我所知,无法使用意图
显示通知
您应该看到的是在Handler
类中使用postdayed()
方法。例如:
handler = new Handler();
final Runnable r = new Runnable() {
public void run() {
// Create your notification using NotificationCompat.Builder
// and call notificationManager.notify()
}
};
handler.postDelayed(r, /*time to delay for in ms*/);
编辑:如果您确实想使用AlarmManager
和广播来显示通知,则需要扩展BroadcastReceiver
并让它收听您的PendingEvent
广播。接下来,您将计划使用AlarmManager
广播PendingEvent
。当AlarmManager
在10秒后触发PendingEvent
时,您的BroadcastReceiver
将接收广播并调用notificationManager.notify()
以显示通知。这是一种非常迂回的显示通知的方式
handler = new Handler();
final Runnable r = new Runnable() {
public void run() {
// Create your notification using NotificationCompat.Builder
// and call notificationManager.notify()
}
};
handler.postDelayed(r, /*time to delay for in ms*/);