Computer >> คอมพิวเตอร์ >  >> การเขียนโปรแกรม >> Android

จะลบการแจ้งเตือนหลังจากเวลาที่กำหนดใน Android ได้อย่างไร?


ตัวอย่างนี้สาธิตเกี่ยวกับวิธีการลบการแจ้งเตือนหลังจากเวลาที่กำหนดใน Android

ขั้นตอนที่ 1 − สร้างโครงการใหม่ใน Android Studio ไปที่ไฟล์ ⇒ โครงการใหม่และกรอกรายละเอียดที่จำเป็นทั้งหมดเพื่อสร้างโครงการใหม่

ขั้นตอนที่ 2 − เพิ่มรหัสต่อไปนี้ใน res/layout/activity_main.xml

<ก่อน> <ปุ่ม android :id ="@+id/btnCreateNotification" android :layout_width ="0dp" android :layout_height ="wrap_content" android :text ="สร้างการแจ้งเตือน" แอป :layout_constraintBottom_toBottomOf =แอป "พาเรนต์" :layout_constraintEnd_toEndOf =แอป "พาเรนต์" :layout_constraintStart_toStartOf =แอป "พาเรนต์" :layout_constraintTop_toTopOf ="พาเรนต์" />

ขั้นตอนที่ 3 − เพิ่มรหัสต่อไปนี้ใน src/MainActivity.java

แพ็คเกจ app.tutorialspoint.com.notifyme;นำเข้า android.app.NotificationChannel;นำเข้า android.app.NotificationManager;นำเข้า android.app.PendingIntent;นำเข้า android.content.Context;นำเข้า android.content.Intent;นำเข้า android os.Handler นำเข้า android.support.v4.app.NotificationCompat นำเข้า android.support.v7.app.AppCompatActivity นำเข้า android.os.Bundle นำเข้า android.view.View นำเข้า android.widget.Button คลาสสาธารณะ MainActivity ขยาย AppCompatActivity { สตริงสุดท้ายแบบคงที่สาธารณะ NOTIFICATION_CHANNEL_ID ="10001"; สตริงคงที่ส่วนตัวสุดท้าย default_notification_channel_id ="default"; @Override ป้องกันโมฆะ onCreate (Bundle saveInstanceState) { super .onCreate (savedInstanceState); setContentView(R.layout. activity_main ); ปุ่ม btnCreateNotification =findViewById(R.id. btnCreateNotification ); btnCreateNotification.setOnClickListener ( View.OnClickListener ใหม่ () { @Override public void onClick (View v) { Intent notificationIntent =เจตนาใหม่ (MainActivity. this, MainActivity. class ); notificationIntent.addCategory (Intent. CATEGORY_LAUNCHER ); alertIntent. . ACTION_MAIN ); notificationsIntent.setFlags(Intent. FLAG_ACTIVITY_CLEAR_TOP | Intent. FLAG_ACTIVITY_SINGLE_TOP ); PendingIntent resultIntent =PendingIntent. getActivity (MainActivity. this, 0 , notificationIntent;Mat_Compat_channel. ) . ) .setSmallIcon(R.drawable. ic_launcher_foreground ) .setContentTitle( "Test" ) .setContentIntent(resultIntent) .setStyle( new NotificationCompat.InboxStyle()) .setContentText( "สวัสดี นี่เป็นการแจ้งเตือนครั้งแรกของฉัน ฟิคชั่น" ); สุดท้าย NotificationManager mNotificationManager =(NotificationManager) getSystemService(Context. NOTIFICATION_SERVICE ); if (android.os.Build.VERSION. SDK_INT>=android.os.Build.VERSION_CODES. O ) { ความสำคัญจริง =NotificationManager IMPORTANCE_HIGH; NotificationChannel alertChannel =new NotificationChannel( NOTIFICATION_CHANNEL_ID , "NOTIFICATION_CHANNEL_NAME" , ความสำคัญ); mBuilder.setChannelId ( NOTIFICATION_CHANNEL_ID ); ยืนยัน mNotificationManager !=null; mNotificationManager.createNotificationChannel (ช่องแจ้งเตือน); } สุดท้าย int alertId =( int ) ระบบ ปัจจุบันเวลามิลลิวินาที (); ยืนยัน mNotificationManager !=null; mNotificationManager.notify(notificationId , mBuilder.build()); ตัวจัดการ h =ตัวจัดการใหม่ (); ดีเลย์นานเป็นมิลลิวินาที =5000; h.postDelayed ( runnable ใหม่ () { public void run () { mNotificationManager .cancel ( notificationId ); } } , delayInMilliseconds); } }); }}

ขั้นตอนที่ 4 − เพิ่มรหัสต่อไปนี้ใน androidManifest.xml

<ก่อน> <หมวดหมู่ android :name="android.intent .category.LAUNCHER" />

มาลองเรียกใช้แอปพลิเคชันของคุณกัน ฉันคิดว่าคุณได้เชื่อมต่ออุปกรณ์มือถือ Android จริงกับคอมพิวเตอร์ของคุณ ในการรันแอพจาก android studio ให้เปิดไฟล์กิจกรรมของโปรเจ็กต์แล้วคลิกไอคอน Run จากแถบเครื่องมือ เลือกอุปกรณ์มือถือของคุณเป็นตัวเลือก แล้วตรวจสอบอุปกรณ์มือถือของคุณซึ่งจะแสดงหน้าจอเริ่มต้นของคุณ -

จะลบการแจ้งเตือนหลังจากเวลาที่กำหนดใน Android ได้อย่างไร?