0

我正在制作一个闹钟应用程序。当警报处于活动状态(由日历激活)时,此应用程序会调用意图。当闹钟或日历响起时,我想调用一个活动,即hello.class. 在日历调用的未决意图中提到了此类。当调用日历并且应该处理待处理的意图时,什么都不会发生。关于我做错了什么的任何想法?

我的代码如下:注释标记为“ABC”的行hello.class是提到的地方

Intent myIntent = new Intent(AndroidAlarmService.this, Hello.class); // ABC


pendingIntent = PendingIntent.getService(AndroidAlarmService.this, 0, myIntent, 0);

AlarmManager alarmManager = (AlarmManager)getSystemService(ALARM_SERVICE);

Calendar calendar = Calendar.getInstance();
calendar.setTimeInMillis(System.currentTimeMillis());

calendar.add(Calendar.SECOND, 5);
alarmManager.set(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), pendingIntent);
4

1 回答 1

1

您必须添加FLAG_ACTIVITY_NEW_TASK到您的意图中,因为该活动将在现有活动的上下文之外启动。

文档是这样说的。

只需添加

myIntent.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK);

以下Intent myIntent = new Intent...

并更改PendingIntent.getService(...)PendingIntent.getActivity(...)

于 2012-06-29T16:47:31.993 回答