我无法让我的 BroadcastReceiver 工作。onReceive 没有被调用。我没有使用服务。我在我的活动的 onCreate 方法中设置警报。我也在使用 RTC_WAKEUP。但是,如果我的设备已经唤醒了怎么办?无论如何都会调用 onReceive 吗?即使设备处于唤醒状态,我也希望调用 onReceiver。通常,即使设备处于睡眠状态,我也需要调用接收器,但我也想执行接收器在手动启动活动时执行的代码。这是我开始闹钟的方式:
AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
Intent i = new Intent(context, ServiceStarter.class);
PendingIntent pi = PendingIntent.getActivity(context, 0, i, PendingIntent.FLAG_UPDATE_CURRENT);
am.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis(), pi);
在清单中:
<receiver android:process=":remote" android:name=".ServiceStarter" android:exported="true"></receiver>