【发布时间】:2018-02-10 01:54:38
【问题描述】:
我有一个 AlarmManager 使用来自用户输入的日历(存储在一个对象中),我的目标是从这个日历中安排通知,如果应用程序运行一切顺利,但如果它被从最近的应用程序中删除,通知不来。我的代码是:
Intent intent = new Intent(getApplicationContext(), EventReciver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(this,0, intent,0);
Calendar calendar = Calendar.getInstance();
Calendar horaInicial = materiaBuffer.getHoraInicial(); //Take Calendar from materiaBuffer object
calendar.set(Calendar.HOUR_OF_DAY, horaInicial.get(Calendar.HOUR_OF_DAY));
calendar.set(Calendar.MINUTE, horaInicial.get(Calendar.MINUTE));
pendingIntent = PendingIntent.getBroadcast(this, i, intent, PendingIntent.FLAG_UPDATE_CURRENT);
alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent);
我只是在 AndroidManifest 中更改:
<receiver android:name=".etc.EventReciver" android:process=":remote"></receiver>
我的 EventReciver:
public class EventReciver extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent intent) {
Log.i("Lauri", "EventReciver");
// I removed the code for the notification, it works fine
}
}
谁能帮忙?
【问题讨论】:
-
swipped away from recents apps有时意味着杀死整个应用进程。 -
@AvatarQing 有什么方法可以保留 AlarmManager?
-
我没有什么好主意,我认为强制终止进程后没有办法保持闹钟工作,即使在一些著名的第三方闹钟应用程序中也是如此。也许您应该寻找使应用程序永远保持活力的方法。
-
你在什么设备上测试?
-
@DavidWasser 在华硕 Zenfone 3、Android 7 中
标签: android notifications android-service alarmmanager