มี Android API เพื่อลบสัญญาณเตือนหรือไม่

ฉันมีแอพที่ให้ผู้ใช้สามารถตั้งเวลาปลุกได้หลากหลาย ปัจจุบันใช้ AlarmManager บวกกับ BroadcastReceiver และ AlertDialog เพื่อแจ้งเตือนผู้ใช้เมื่อสัญญาณเตือนดังขึ้น

ฉันต้องการดูว่าแอปของฉันสามารถใช้งานนาฬิกาปลุกในตัวได้หรือไม่ ฉันรู้ว่าฉันสามารถตั้งเวลาปลุกได้ดังนี้

            Intent i = new Intent(AlarmClock.ACTION_SET_ALARM);
        i.putExtra(AlarmClock.EXTRA_HOUR, new Date(alarm.getTime()).getHours());
        i.putExtra(AlarmClock.EXTRA_MINUTES, new Date(alarm.getTime()).getMinutes());
        i.putExtra(AlarmClock.EXTRA_MINUTES, alarm.getDescription());
        i.putExtra(AlarmClock.EXTRA_SKIP_UI, true);
        context.startActivity(i);

แต่นี่นำเสนอปัญหา 2 ประการ:

  1. ดูเหมือนจะไม่มีวิธีตั้งเวลาปลุกล่วงหน้า >24 ชั่วโมงข้างหน้า
  2. การเตือนในตัวของ Android อนุญาตให้ตั้งค่าการเตือนได้ 10 ครั้งเท่านั้น

ในการแก้ไขรายการที่ 1 ฉันสามารถใช้ AlarmManager เพื่อกำหนดเวลาให้ตั้งเวลาปลุกผู้ใช้ภายใน 24 ชั่วโมงหลังจากครบกำหนด อย่างไรก็ตาม สิ่งนี้ทำให้ฉันมีรายการที่ 2 - โดยหลักการแล้วฉันต้องการวิธีลบการเตือนของแอปออกจากนาฬิกาปลุก Android หลังจากที่ดำเนินการแล้ว (เพื่อหลีกเลี่ยงการเตือนของแอปที่ใช้พื้นที่การเตือน) แต่ไม่สามารถหาทางรับได้ รายการการเตือนและลบออกหนึ่งรายการ

เป็นไปได้หรือฉันต้องยึดแนวทาง AlarmManager/AlertDialog ด้วยตนเอง


person barry    schedule 28.05.2012    source แหล่งที่มา


คำตอบ (1)


หากคุณต้องการนาฬิกาปลุกภายใน 24 ชั่วโมง คุณสามารถใช้นาฬิกาปลุกได้ หากมีการดำเนินการเพิ่มเติมในอนาคต คุณจะต้องเพิ่มการแจ้งเตือนในกิจกรรมในปฏิทิน นอกจากนี้คุณยังสามารถใช้งานตัวจัดการสัญญาณเตือนแบบกำหนดเองได้ ทั้งหมดนี้เกี่ยวกับสิ่งที่คุณพยายามทำให้สำเร็จโดยที่คุณไม่ได้พูดอะไรเลย

person Warpzit    schedule 29.09.2013