Junior
Ինչպես ստեղծել ծանուցում Android-ում?
sobes.tech AI
Պատասխան AI-ից
Անհրաժեշտ է հետևել հետևյալ քայլերին՝
- Ստեղծել ծանուցման ալիք (API մակարդակ 26 և բարձր)
- Կառուցել ծանուցումը
NotificationCompat.Builder-ի միջոցով - Ցուցադրել ծանուցումը ծանուցման մենեջերի միջոցով
// Ծանուցման ալիքի ստեղծում (API 26+)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
String channelId = "my_channel_id";
CharSequence channelName = "My Channel";
String channelDescription = "Description for My Channel";
int importance = NotificationManager.IMPORTANCE_DEFAULT;
NotificationChannel channel = new NotificationChannel(channelId, channelName, importance);
channel.setDescription(channelDescription);
// Գրանցել ալիքը համակարգում
NotificationManager notificationManager = getSystemService(NotificationManager.class);
notificationManager.createNotificationChannel(channel);
}
// Ծանուցման կառուցապատողի ստեղծում
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, "my_channel_id") // նշեք ալիքի ID
.setSmallIcon(R.drawable.ic_notification) // ծանուցման պատկերակ
.setContentTitle("Ծանուցման վերնագիր") // վերնագիր
.setContentText("Ծանուցման տեքստ") // տեքստ
.setPriority(NotificationCompat.PRIORITY_DEFAULT); // առաջնահերթություն
// PendingIntent ստեղծել՝ գործողության համար սեղմելու ժամանակ
// Օրինակ՝ ակտիվությունը բացելու համար
Intent intent = new Intent(this, MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE); // API S+ նշան
builder.setContentIntent(pendingIntent);
// Ցուցադրել ծանուցումը
NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(this);
int notificationId = 1; // Յուրականչափ ID
notificationManagerCompat.notify(notificationId, builder.build());
Հիմնական բաղադրիչները՝
- Փոքր պատկերակ:
setSmallIcon(), ցուցադրվում է վիճակագրական տողում - Վերնագիր:
setContentTitle(), հիմնական տեքստը - Տեքստ:
setContentText(), լրացուցիչ տեքստ - Ծանուցման ալիք (API 26+): Ծանուցումների խումբ՝ ընդհանուր կարգավորումներ
- PendingIntent: Գործողություն՝ կատարվող սեղմելու ժամանակ
Նաեւ կարելի է ավելացնել մեծ պատկեր (setStyle(new NotificationCompat.BigPictureStyle())), գործողության կոճակներ (addAction()), ձայն, զարկերակ եւ այլ պարամետրեր։