NotificationChannel তৈরি এবং কনফিগারেশনের সম্পূর্ণ গাইড
এই উদাহরণটি দেখাবে কিভাবে Android Oreo এবং তার উপরের ভার্সনে নোটিফিকেশন চ্যানেল তৈরি করা যায় এবং সেটিকে বিভিন্ন অ্যাট্রিবিউট (সাউন্ড, ভাইব্রেশন, লাইট, חשיבות) দিয়ে কাস্টমাইজ করা যায়।
ধাপ ১: নতুন প্রজেক্ট তৈরি
Android Studio-তে File → New Project যান।
ধাপ ২: লেআউট ফাইল (res/layout/activity_main.xml)
<? xml version= "1.0" encoding= "utf-8" ?> <android.support.constraint.ConstraintLayout xmlns: android = "https://schemas.android.com/apk/res/android" xmlns: app = "https://schemas.android.com/apk/res-auto" xmlns: tools = "https://schemas.android.com/tools" android :layout_width = "match_parent" android :layout_height = "match_parent" android :padding = "16dp" tools :context = ".MainActivity" > <Button android :id = "@+id/btnCreateNotification" android :layout_width = "0dp" android :layout_height = "wrap_content" android :text = "Create notification" app :layout_constraintBottom_toBottomOf = "parent" app :layout_constraintEnd_toEndOf = "parent" app :layout_constraintStart_toStartOf = "parent" app :layout_constraintTop_toTopOf = "parent" /> </android.support.constraint.ConstraintLayout>
ধাপ ৩: raw ফোল্ডারে সাউন্ড ফাইল যোগ করুন
`res/raw/` ফোল্ডারে `quite_impressed.mp3` রাখুন।

ধাপ ৪: MainActivity.java (src/MainActivity.java)
package app.tutorialspoint.com.notifyme ; import android.app.NotificationChannel ; import android.app.NotificationManager ; import android.content.ContentResolver ; import android.content.Context ; import android.graphics.Color ; import android.media.AudioAttributes ; import android.net.Uri ; import android.support.v4.app.NotificationCompat ; import android.support.v7.app.AppCompatActivity ; import android.os.Bundle ; import android.view.View ; import android.widget.Button ; public class MainActivity extends AppCompatActivity { public static final String NOTIFICATION_CHANNEL_ID = "10001" ; private final static String default_notification_channel_id = "default" ; @Override protected void onCreate (Bundle savedInstanceState) { super .onCreate(savedInstanceState) ; setContentView(R.layout. activity_main ) ; Button btnCreateNotification = findViewById(R.id. btnCreateNotification ) ; btnCreateNotification.setOnClickListener( new View.OnClickListener() { @Override public void onClick (View v) { Uri sound = Uri. parse (ContentResolver. SCHEME_ANDROID_RESOURCE + "://" + getPackageName() + "/raw/quite_impressed.mp3" ) ; NotificationCompat.Builder mBuilder = new NotificationCompat.Builder(MainActivity. this, default_notification_channel_id ) .setSmallIcon(R.drawable. ic_launcher_foreground ) .setContentTitle( "Test" ) .setSound(sound) .setContentText( "Hello! This is my first push notification" ); NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context. NOTIFICATION_SERVICE ) ; if (android.os.Build.VERSION. SDK_INT >= android.os.Build.VERSION_CODES. O ) { AudioAttributes audioAttributes = new AudioAttributes.Builder() .setContentType(AudioAttributes. CONTENT_TYPE_SONIFICATION ) .setUsage(AudioAttributes. USAGE_ALARM ) .build() ; int importance = NotificationManager. IMPORTANCE_HIGH ; NotificationChannel notificationChannel = new NotificationChannel( NOTIFICATION_CHANNEL_ID , "NOTIFICATION_CHANNEL_NAME" , importance) ; notificationChannel.enableLights( true ) ; notificationChannel.setLightColor(Color. RED ) ; notificationChannel.enableVibration( true ) ; notificationChannel.setVibrationPattern( new long []{ 100 , 200 , 300 , 400 , 500 , 400 , 300 , 200 , 400 }) ; notificationChannel.setSound(sound , audioAttributes) ; mBuilder.setChannelId( NOTIFICATION_CHANNEL_ID ) ; assert mNotificationManager != null; mNotificationManager.createNotificationChannel(notificationChannel) ; } assert mNotificationManager != null; mNotificationManager.notify(( int ) System. currentTimeMillis (), mBuilder.build()) ; } }) ; } }
ধাপ ৫: AndroidManifest.xml
<? xml version = "1.0" encoding = "utf-8" ?> <manifest xmlns: android = "https://schemas.android.com/apk/res/android" package = "app.tutorialspoint.com.notifyme" > <application android :allowBackup = "true" android :icon = "@mipmap/ic_launcher" android :label = "@string/app_name" android :roundIcon = "@mipmap/ic_launcher_round" android :supportsRtl = "true" android :theme = "@style/AppTheme" > <activity android :name = ".MainActivity" > <intent-filter> <action android :name = "android.intent.action.MAIN" /> <category android :name = "android.intent.category.LAUNCHER" /> </intent-filter> </activity> </application> </manifest>
অ্যাপ্লিকেশন চালান
ডিভাইস সংযুক্ত থাকলে Run আইকনে ক্লিক করুন। নোটিফিকেশন চ্যানেল তৈরি হয়ে কাস্টম সেটিংসহ নোটিফিকেশন দেখাবে।
