アプリを強制終了してもアラームが登録されるので安心
あなたの要求に従って、私はコードを追加しました
public class SampleActivity extends Activity{
public static AlarmManager mAlarmManager;
public static PendingIntent mPintent;
public static Intent mIntent;
@Override
protected void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
Context context = getApplicationContext();
SampleActivity.startAlarmManager(context);
}
public static void startAlarmManager(Context context){
SampleActivity.mIntent = new Intent(context, YourService.class);
mAlarmManager = (AlarmManager)context.getSystemService(Context.ALARM_SERVICE);
mPintent = PendingIntent.getService(context, 0, SampleActivity.mIntent, 0);
Calendar cal = Calendar.getInstance();
mAlarmManager.setRepeating(AlarmManager.RTC_WAKEUP, cal.getTimeInMillis(), 2000, mPintent);
}
}
次に、起動完了時に同じアラームを開始します
public class SampleBootComplete extends BroadcastReceiver{
@Override
public void onReceive(Context context, Intent arg1) {
SampleActivity.startAlarmManager(context);
}
}
マニフェストファイルにブート コンプリート レシーバーを登録する
<receiver android:name="com.sample.receiver.SampleBootComplete">
<intent-filter >
<action android:name="android.intent.action.BOOT_COMPLETED"/>
</intent-filter>
</receiver>