一定の時間にAlarmReceiverを実行するこのクラス(Androidの起動後に開始)があります。アラームを無効または有効にする共有設定を追加しました。無効にしてから再度有効にすると、アラームが実行されません。エミュレータを再起動する必要があります。エミュレータの再起動を回避できますか?ありがとう!
public class AutoStart extends BroadcastReceiver {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(context);
CheckboxPreference = prefs.getBoolean("checkboxPref", true);
Calendar cal4 = Calendar.getInstance(TimeZone.getDefault(), Locale.getDefault());
cal4.set(Calendar.DATE,31);
cal4.set(Calendar.MONTH,Calendar.DECEMBER);
cal4.set(Calendar.YEAR,2012);//year...
cal4.set(Calendar.HOUR_OF_DAY, 23);
cal4.set(Calendar.MINUTE, 59);
cal4.set(Calendar.SECOND, 00);
Intent intent2 = new Intent(context, AlarmReceiver.class);
PendingIntent Alarm1 = PendingIntent.getBroadcast(context, 0, intent2, 0);
alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal4.getTimeInMillis(), DateUtils.DAY_IN_MILLIS, Alarm1);
マニフェスト:
<receiver android:name="AutoStart">
<intent-filter>
<action
android:name="android.intent.action.BOOT_COMPLETED" />
<category android:name="android.intent.category.HOME" />
</intent-filter>
</receiver>