Sobes.tech
Junior

Ինչպես ստեղծել ծանուցում Android-ում?

sobes.tech AI

Պատասխան AI-ից

Անհրաժեշտ է հետևել հետևյալ քայլերին՝

  1. Ստեղծել ծանուցման ալիք (API մակարդակ 26 և բարձր)
  2. Կառուցել ծանուցումը NotificationCompat.Builder-ի միջոցով
  3. Ցուցադրել ծանուցումը ծանուցման մենեջերի միջոցով
// Ծանուցման ալիքի ստեղծում (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()), ձայն, զարկերակ եւ այլ պարամետրեր։