第七色在线视频,2021少妇久久久久久久久久,亚洲欧洲精品成人久久av18,亚洲国产精品特色大片观看完整版,孙宇晨将参加特朗普的晚宴

為了賬號安全,請及時(shí)綁定郵箱和手機(jī)立即綁定
已解決430363個(gè)問題,去搜搜看,總會有你想問的

如何取消此重復(fù)警報(bào)?

如何取消此重復(fù)警報(bào)?

冉冉說 2019-10-30 14:25:31
我在寫一些提醒用戶的東西。用戶將為其事件設(shè)置提醒,當(dāng)時(shí)間到了時(shí),將設(shè)置重復(fù)警報(bào)以觸發(fā)狀態(tài)欄通知。但是,在選擇通知或清除通知后,警報(bào)似乎不會停止。我不確定在何處取消此重復(fù)警報(bào)。以下是一些代碼:在我的主要活動(dòng)中設(shè)置重復(fù)警報(bào)alarmTime = Calendar.getInstance();Intent intent = new Intent(this, AlarmReceive.class);PendingIntent sender = PendingIntent.getBroadcast(this, 0, intent, 0);AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);alarmTime.add(Calendar.MINUTE,offset_time);//Schedule the alarmalarmManager.setRepeating(AlarmManager.RTC_WAKEUP, alarmTime.getTimeInMillis(), 30 * 1000, sender);在我的OnReceive方法中,我只在狀態(tài)欄中顯示通知并將標(biāo)記設(shè)置為 FLAG_AUTO_CANCELmanager = (NotificationManager) context.getSystemService(context.NOTIFICATION_SERVICE);// Set the icon, scrolling text and timestampNotification notification = new Notification(R.drawable.medical, text, System.currentTimeMillis());PendingIntent contentIntent = PendingIntent.getActivity(context, 0, i, 0);notification.flags = Notification.FLAG_AUTO_CANCEL;manager.notify(R.string.service_text, notification);當(dāng)用戶選擇通知或清除通知時(shí),如何停止警報(bào)?
查看完整描述

3 回答

?
叮當(dāng)貓咪

TA貢獻(xiàn)1776條經(jīng)驗(yàn) 獲得超12個(gè)贊

cancel()以AlarmManager與PendingIntent您使用的等效的方式調(diào)用setRepeating():


Intent intent = new Intent(this, AlarmReceive.class);

PendingIntent sender = PendingIntent.getBroadcast(this, 0, intent, 0);

AlarmManager alarmManager = (AlarmManager) getSystemService(ALARM_SERVICE);


alarmManager.cancel(sender);


查看完整回答
反對 回復(fù) 2019-10-30
?
米琪卡哇伊

TA貢獻(xiàn)1998條經(jīng)驗(yàn) 獲得超6個(gè)贊

我嘗試了各種方法,但無法使它起作用,所以我決定做一個(gè)骯臟的把戲。當(dāng)我想取消重復(fù)的鬧鐘時(shí),我使用創(chuàng)建鬧鐘的相同方法(因此替換了舊的鬧鐘),然后立即將其取消。使用此方法,如果boolean變量設(shè)置為true,它將創(chuàng)建警報(bào),它會替換并取消具有相同ID的替換:


static void CancelRepeatingAlarm(Context context, boolean creating){

    //if it already exists, then replace it with this one

    Intent alertIntent = new Intent(context, AlertReceiver.class);

    PendingIntent timerAlarmIntent = PendingIntent

            .getBroadcast(context, 100, alertIntent,PendingIntent.FLAG_CANCEL_CURRENT); 

    AlarmManager alarmManager = (AlarmManager) context.getSystemService(Context.ALARM_SERVICE);

    if (creating){

        alarmManager.setRepeating(AlarmManager.RTC_WAKEUP, calendar.getTimeInMillis(), INTERVAL, timerAlarmIntent);

    }else{

        alarmManager.cancel(timerAlarmIntent);

    }


查看完整回答
反對 回復(fù) 2019-10-30
?
Cats萌萌

TA貢獻(xiàn)1805條經(jīng)驗(yàn) 獲得超9個(gè)贊

在中MainActivity,設(shè)置鬧鐘時(shí)間。如果要使用多個(gè)警報(bào),請使用SharedPreferences來存儲它們各自的ID。這是代碼:


PendingIntent pendingIntent = PendingIntent.getBroadcast(MainActivity.this, _id,intent, PendingIntent.FLAG_UPDATE_CURRENT);

alarmManager = (AlarmManager) getSystemService(Activity.ALARM_SERVICE);

alarmManager.set(AlarmManager.RTC_WAKEUP, targetCal.getTimeInMillis(),

            pendingIntent);


public static Context getContext() {

    return mContext;

}

mContext=mainactivity.this;

您第二次Activity使用來自的相同ID SharedPreferences。在我的代碼中,我從ArrayList獲得ID Alarm_id。最后,您可以在此處使用MainActivity上下文MainActivity.getContext()。這是代碼:


AlarmManager alarmManager = (AlarmManager) getSystemService(Context.ALARM_SERVICE);

Intent intentAlarm = new Intent(AlarmListviewActivity.this,

        MainActivity.class);

PendingIntent morningIntent = PendingIntent.getBroadcast(MainActivity.getContext(), Alarm_id.get(positon),

        intentAlarm, PendingIntent.FLAG_CANCEL_CURRENT);


alarmManager.cancel(morningIntent);

morningIntent.cancel();


查看完整回答
反對 回復(fù) 2019-10-30
  • 3 回答
  • 0 關(guān)注
  • 363 瀏覽

添加回答

舉報(bào)

0/150
提交
取消
微信客服

購課補(bǔ)貼
聯(lián)系客服咨詢優(yōu)惠詳情

幫助反饋 APP下載

慕課網(wǎng)APP
您的移動(dòng)學(xué)習(xí)伙伴

公眾號

掃描二維碼
關(guān)注慕課網(wǎng)微信公眾號