您可以使用AlarmManager类重复操作.
Calendar calendar = Calendar.getInstance();
// 11:59 PM
calendar.set(Calendar.HOUR_OF_DAY, 23);
calendar.set(Calendar.MINUTE, 59);
calendar.set(Calendar.SECOND, 0);
PendingIntent pi = PendingIntent.getBroadcast(context, 0, new Intent(context, MyClass.class),PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager am = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
am.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), AlarmManager.INTERVAL_DAY, pi);
Run Code Online (Sandbox Code Playgroud)
现在创建一个名为MyClass的BroadcastReceiver
public class MyClass extends BroadcastReceiver
{
public void onReceive(Context context, Intent intent)
{
// Write your function code here
}
}
Run Code Online (Sandbox Code Playgroud)
即使您的设备处于睡眠模式,AlarmManager也能正常工作.AlarmManager可帮助您在轻量级模式下创建调度重复任务,而不是创建长代码以再次调用方法.
| 归档时间: |
|
| 查看次数: |
1994 次 |
| 最近记录: |