Aud*_*hil 4 android calendar alarmmanager android-alarms android-pendingintent
我使用Calendar类安排闹钟,如下所示
Calendar cal = Calendar.getInstance();
cal.set(Calendar.HOUR_OF_DAY,1);
cal.getTimeInMillis();
cal.set(Calendar.MINUTE,05);
long TriggerMillis = cal.getTimeInMillis();
AlarmManager aManager = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
aManager.set(AlarmManager.RTC_WAKEUP, TriggerMillis,pIntent);
Run Code Online (Sandbox Code Playgroud)
其中pIntent是在警报触发时进一步继续的待处理意图.
事件触发几秒延迟.使用Calendar类执行此任务是否有任何问题.有什么建议?
TIA ..
Com*_*are 11
你有两个问题:
_WAKEUP直接使用报警是不可靠的.唯一可靠的模式涉及WakefulBroadcastReceiver,我WakefulIntentService或者沿着这些线的东西,其中PendingIntent将是a BroadcastReceiver.
如果您android:targetSdkVersion是19或更高,并且您使用的是API Level 19以上的设备,set()则不准确.理想情况下,您可以使其不准确,或者可能用于setWindow()控制它的关闭程度,以最大限度地降低警报事件的功率.如果绝对必须在精确的时刻发生,则需要使用setExact().由于setWindow()和setExact()是新的API等级19,你需要将回落到set()旧设备上,通过检查Build.VERSION.SDK_INT和相应的分支.
| 归档时间: |
|
| 查看次数: |
4518 次 |
| 最近记录: |