重复警报停止工作

时间:2017-01-09 09:53:36

标签: android alarmmanager alarm repeatingalarm

我正在使用闹钟服务在午夜每天做一些任务,但今天它停止工作。我检查并发现警报服务没有启动。我无法弄清问题是什么。

AlarmManager alarmManager=(AlarmManager) getSystemService(ALARM_SERVICE);

        Intent alarmIntent=new Intent(context,UpdateTables.class);

        PendingIntent pendingIntent=PendingIntent.getBroadcast(context,0,alarmIntent,PendingIntent.FLAG_UPDATE_CURRENT);

        alarmManager.cancel(pendingIntent);

        Calendar alarmStartTime = Calendar.getInstance();

        alarmStartTime.setTimeInMillis(System.currentTimeMillis());

        //midnight
        alarmStartTime.set(Calendar.HOUR_OF_DAY, 15);
        alarmStartTime.set(Calendar.MINUTE, 12);
        alarmStartTime.set(Calendar.SECOND, 0);


        if(Calendar.getInstance().getTimeInMillis()>alarmStartTime.getTimeInMillis())
        {
            alarmStartTime.add(Calendar.DATE,1);
        }

        Log.i("TIME IS ",Long.toString(alarmStartTime.getTimeInMillis()));


        System.out.println("Updating table time "+alarmStartTime);
        System.out.println("Time in millseconds "+alarmStartTime.getTimeInMillis());


        alarmManager.setInexactRepeating(AlarmManager.RTC,alarmStartTime.getTimeInMillis(),AlarmManager.INTERVAL_DAY,pendingIntent);
清单文件中的

<receiver android:name=".UpdateTables"
            android:enabled="true"
            android:exported="true">

            <intent-filter>
                <action android:name="android.intent.action.BOOT_COMPLETED" />
            </intent-filter>

        </receiver>

0 个答案:

没有答案