我有要運行的代碼每天;爲此,我正在嘗試使用AlarmManager
。這是我對觸發報警代碼:Android中的AlarmManager
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
Intent i = new Intent(this, AlarmReciever.class);
PendingIntent pi = PendingIntent.getService(this, 0, i, 0);
AlarmManager am = (AlarmManager) getSystemService(ALARM_SERVICE);
am.cancel(pi); // cancel any existing alarms
am.setInexactRepeating(AlarmManager.ELAPSED_REALTIME,
SystemClock.elapsedRealtime() + AlarmManager.INTERVAL_DAY,
AlarmManager.INTERVAL_DAY, pi);
}
的這部分代碼在調用AlarmReciever
類如預期,但我想在AlarmReciever
類的代碼,每天執行一次只。它被稱爲多次。我如何限制它?
這是AlarmReciever
類:
public class AlarmReciever extends BroadcastReceiver {
@Override
public void onReceive(Context context, Intent intent) {
System.out.println("in alarm reciever class");
}
}
我想在onReceive()
方法執行一些業務邏輯。
在manifest.xml文件:
<receiver android:name="com.xyz.reciever.AlarmReciever"></receiver>
<uses-permission android:name="com.android.alarm.permission.SET_ALARM"/>
聲明。
你的意思是它不斷令人震驚? – kabuto178
@ kabuto178是它不斷警惕....我在AlarmReciever類中有一個sysout,並且它的打印不斷...沒有像預期的那樣。 –
您是否嘗試使用日曆對象作爲時間參考? – kabuto178