Closed. This question needs to be more focused。它当前不接受答案。
想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
2年前关闭。
在我的应用程序中,我希望每位用户每24小时运行一次代码!
例如:如果在上午12:00显示
我该怎么做?
调用registerAlarm方法,例如从活动onCreate中调用。理想情况下,我们应该在应用安装时进行注册
步骤2:创建BroadcastReceiver。
步骤3:在清单文件中添加接收方
想改善这个问题吗?更新问题,使其仅通过editing this post专注于一个问题。
2年前关闭。
在我的应用程序中,我希望每位用户每24小时运行一次代码!
例如:如果在上午12:00显示
Toast
消息,然后在明天12:00再显示此Toast
消息。我该怎么做?
最佳答案
您需要注册一个警报,请尝试以下
步骤1:注册警报。
private void registerAlarm(Context context, int requestCode) {
int HOUR = 60 * 60 * 1000;
Intent intent = new Intent(context, DailyAlarmReceiver.class);
PendingIntent pendingIntent = PendingIntent.getBroadcast(
context, requestCode, intent, PendingIntent.FLAG_UPDATE_CURRENT);
AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);
alarmManager.set(AlarmManager.RTC_WAKEUP, System.currentTimeMillis()
+ 24 * HOUR, pendingIntent);
}
调用registerAlarm方法,例如从活动onCreate中调用。理想情况下,我们应该在应用安装时进行注册
registerAlarm(this, 1);
步骤2:创建BroadcastReceiver。
public class DailyAlarmReceiver extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
Log.d("DailyAlarmReceiver","Received");
}
}
步骤3:在清单文件中添加接收方
<receiver
android:name=".DailyAlarmReceiver"
android:exported="true" />