Android 闹钟是不会被叫来的
我正在从服务Android 闹钟是不会被叫来的,android,service,alarmmanager,Android,Service,Alarmmanager,我正在从服务ScheduleAdvanceBookingService调用警报,以便在预定时间调用另一个服务SendRequestAdvanceBookingService 清单文件已被删除 <service android:name=".ScheduleAdvanceBookingService" android:enabled="true" android:label="@string/app_name" /> &l
ScheduleAdvanceBookingService
调用警报,以便在预定时间调用另一个服务SendRequestAdvanceBookingService
清单文件已被删除
<service
android:name=".ScheduleAdvanceBookingService"
android:enabled="true"
android:label="@string/app_name" />
<service
android:name=".SendRequestAdvanceBookingService"
android:enabled="true"
android:label="@string/app_name" >
<intent-filter>
<action android:name="android.intent.action.NOTIFY" />
</intent-filter>
</service>
我未来的报警服务是
public class SendRequestAdvanceBookingService extends Service {
public SendRequestAdvanceBookingService() {
super();
handler = new Handler();
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
Log.d("Taxeeta", "Start - SEND REQUEST.");
调试语句以检查日期
08-20 13:40:14.008:D/Taxeta(31578):计划在2014年8月20日13:41:37自动预订
我错过了什么
我试过了
cal.setTime(startTime)cal.getTimeInMilli()
修复非常简单,任何地方都没有文档记录 我运行了
/adb shell dumpsys alarm>~/dump.txt
,并在我的设备上搜索我的报警。我在我的应用程序的设备上发现了许多待处理的警报。这促使我进行清理,并从设置->应用程序->MyApp->强制关闭中强制关闭警报
然后我运行了我的应用程序,它成功了。过了一会儿,我才意识到之前没有运行该应用程序的手机工作得很好,这暗示我要再次进行清理
所以我需要做的就是
autoBookingAlarm.cancle(autoBookingPendingIntent);
在
autoBookingAlarm.set(AlarmManager.RTC_WAKEUP, alarmCallTime,
autoBookingPendingIntent);
这将在安排新的警报之前取消以前的警报。如何调用该服务?报警代码在哪里?尝试删除
newIntent.addFlags(Intent.FLAG\u ACTIVITY\u NEW\u TASK)
和android:theme=“@android:style/theme.Light.NoTitleBar”
对于服务来说是无用的。不,删除FLAG\u ACTIVITY\u NEW\u任务不起作用请检查您的日期实例,看您是否从意图中获得了正确的日期。
autoBookingAlarm.set(AlarmManager.RTC_WAKEUP, alarmCallTime,
autoBookingPendingIntent);