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

จะใช้ Notification.deleteIntent ใน Android ได้อย่างไร?


ตัวอย่างนี้สาธิตเกี่ยวกับวิธีใช้ Notification.deleteIntent ใน Android

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

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

<ก่อน> <ปุ่ม android:onClick ="createNotification" android:text ="สร้าง การแจ้งเตือน" android:layout_centerInParent="จริง" android:layout_width ="match_parent" android:layout_height ="wrap_content" />

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

แพ็คเกจ app.tutorialspoint.com.notifyme;นำเข้า android.app.NotificationChannel;นำเข้า android.app.NotificationManager;นำเข้า android.app.PendingIntent;นำเข้า android.content.Intent;นำเข้า android.os.Bundle;นำเข้า android support.v4.app.NotificationCompat; นำเข้า android.support.v7.app.AppCompatActivity; นำเข้า android.view.View; MainActivity คลาสสาธารณะขยาย AppCompatActivity { สตริงสุดท้ายแบบคงที่สาธารณะ NOTIFICATION_CHANNEL_ID ="10001"; สตริงคงที่ส่วนตัวสุดท้าย default_notification_channel_id ="default"; @Override ป้องกันโมฆะ onCreate (Bundle saveInstanceState) { super .onCreate (savedInstanceState); setContentView(R.layout. activity_main ); } โมฆะสาธารณะ createNotification (ดูมุมมอง) { Intent notificationIntent =เจตนาใหม่ (getApplicationContext () , MainActivity. class ); alertIntent.putExtra( "จากการแจ้งเตือน" จริง ); alertIntent.setFlags(Intent. FLAG_ACTIVITY_CLEAR_TOP | Intent. FLAG_ACTIVITY_SINGLE_TOP ); ความตั้งใจที่รอดำเนินการ =ความตั้งใจที่รอดำเนินการ getActivity ( นี่ , 0 , การแจ้งเจตนา , 0 ); NotificationManager mNotificationManager =(NotificationManager) getSystemService( NOTIFICATION_SERVICE ); NotificationCompat.Builder mBuilder =ใหม่ NotificationCompat.Builder(getApplicationContext() , default_notification_channel_id ); mBuilder.setContentTitle( "การแจ้งเตือนของฉัน" ); mBuilder.setContentIntent(รอดำเนินการ); mBuilder.setContentText( "ตัวอย่างบริการผู้ฟังการแจ้งเตือน" ); mBuilder.setSmallIcon(R.drawable. ic_launcher_foreground ); mBuilder.setAutoCancel( จริง ); mBuilder.setDeleteIntent(getDeleteIntent()); 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 (ช่องแจ้งเตือน); } ยืนยัน mNotificationManager !=null; mNotificationManager.notify(( int ) ระบบ currentTimeMillis () , mBuilder.build()); } ป้องกัน PendingIntent getDeleteIntent () { เจตนาเจตนา =เจตนาใหม่ (MainActivity. this, NotificationBroadcastReceiver. class ); เจตนา.setAction( "notification_cancelled" ); ส่งคืน PendingIntent getBroadcast (MainActivity. this, 0 , Intent , PendingIntent. FLAG_CANCEL_CURRENT ); }}

ขั้นตอนที่ 4 - เพิ่มรหัสต่อไปนี้ใน src/NotificationBroadcastReceiver

แพ็คเกจ app.tutorialspoint.com.notifyme;นำเข้า android.content.BroadcastReceiver นำเข้า android.content.Context นำเข้า android.content.Intent นำเข้า android.widget.Toast คลาสสาธารณะ NotificationBroadcastReceiver ขยาย BroadcastReceiver { @Override public void onReceive (บริบทบริบท เจตนาเจตนา) { การกระทำของสตริง =Intent.getAction (); if (action.equals( "notification_cancelled" )) { ขนมปังปิ้ง makeText (บริบท , "การแจ้งเตือนถูกลบ" , Toast. LENGTH_SHORT ).show(); } }}

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

<ก่อน><แสดง xmlns:android ="https://schema.android.com/apk/res/android" package="app.tutorialspoint.com.notifyme"> <หมวดหมู่ android :name ="android.intent.category.LAUNCHER" /<

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

จะใช้ Notification.deleteIntent ใน Android ได้อย่างไร?

จะใช้ Notification.deleteIntent ใน Android ได้อย่างไร?