ので、これは、このボタンは私のMainActivityにあり、毎回私がそこにいるかどうかを確認したい押すの最も一般的なものAlarmManagerがすでに動作しているかどうかを確認する方法は?
public void onClick(View v) {
boolean alarmUp = (PendingIntent.getBroadcast(MainActivity.this ,0,
new Intent(MainActivity.this,Notifications.class),
PendingIntent.FLAG_NO_CREATE) != null);
if (alarmUp)
{
am.cancel(pend);
Intent alarmIntent = new Intent(MainActivity.this,Notifications.class);
final PendingIntent pendingIntent =
PendingIntent.getBroadcast(MainActivity.this, 0, alarmIntent,
PendingIntent.FLAG_NO_CREATE);
if (pendingIntent != null) {
pendingIntent.cancel();
}
Toast.makeText(MainActivity.this,"Tweak cleared", Toast.LENGTH_LONG).show();
}
else {
Toast.makeText(MainActivity.this,"There is no Tweak!", Toast.LENGTH_LONG).show();
}
あるこのqustionがたくさん尋ねてきたと私は答えの多くを試してみましたが、うまくいきませんでしたアラーム "AM"とトーストマッサージをキャンセルしている場合はアラームまたはノーです。アプリはいつも、 "トゥイークはありません"というelseステートメントのマッサージをトーストします。たとえアラームがあっても...私はアンドロイドの初心者なので、どんな助けもありがとうと思います。
編集
これは私がそれをキャンセルし、他の1を押す前に、私は、このボタンを押してアラームを
start.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
intent = new Intent(getApplicationContext(), Notifications.class);
pend = PendingIntent.getBroadcast(getApplicationContext(), 100, intent, PendingIntent.FLAG_UPDATE_CURRENT);
am = (AlarmManager) getSystemService(ALARM_SERVICE);
am.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), 1000 * 60, pend);
を開始し、私のMainActivityで別のボタンです。
編集
これは、アラームをチェックしit..itは動作しますが、私はアプリを閉じて、再度開いたとき、それは、アラームがないことを伝えますキャンセルする私の他の試みである「何の微調整はありませんが!」 1
cancel.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (am != null && pend != null) {
am.cancel(pend);
pend = null;
Toast.makeText(MainActivity.this,"Tweak cleared", Toast.LENGTH_LONG).show();
}
else {
Toast.makeText(MainActivity.this,"There is no Tweak!", Toast.LENGTH_LONG).show();
}
}
});
保留と思いますがあっても、あなたが「PendingIntent.FLAG_NO_CREATE」フラグを使用しているため、ボタンを「スタート」
おかげ
保留中のインテントを作成するコードを追加しました –
私は同じインパクトインテントを使用していません.thanks :) –
はい、保留中の同じインテントを使用していません。 –