Sobes.tech
Junior

Hogyan hozzunk létre értesítést Androidon?

sobes.tech MI

Válasz az MI-től

Az Androidon történő értesítés létrehozásához a következő lépéseket kell követnie:

  1. Hozzon létre értesítési csatornát (a 26-os API szint és felette).
  2. Építse fel az értesítést a NotificationCompat.Builder segítségével.
  3. Mutassa az értesítést az értesítési kezelőn keresztül.
// Értesítési csatorna létrehozása (API 26+)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
    String channelId = "my_channel_id";
    CharSequence channelName = "Csatornám";
    String channelDescription = "Leírás a Csatornámhoz";
    int importance = NotificationManager.IMPORTANCE_DEFAULT;
    NotificationChannel channel = new NotificationChannel(channelId, channelName, importance);
    channel.setDescription(channelDescription);
    // Csatorna regisztrálása a rendszerben
    NotificationManager notificationManager = getSystemService(NotificationManager.class);
    notificationManager.createNotificationChannel(channel);
}

// Értesítés építőjének létrehozása
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, "my_channel_id") // Csatorna azonosító megadása
        .setSmallIcon(R.drawable.ic_notification) // Értesítés ikon
        .setContentTitle("Értesítés címe") // Cím
        .setContentText("Értesítés szövege") // Szöveg
        .setPriority(NotificationCompat.PRIORITY_DEFAULT); // Prioritás

// PendingIntent létrehozása az értesítésre kattintáskor
// Például, egy aktivitás megnyitása
Intent intent = new Intent(this, MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE); // Jelző az API S+ számára
builder.setContentIntent(pendingIntent);

// Értesítés megjelenítése
NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(this);
int notificationId = 1; // Egyedi azonosító az értesítéshez
notificationManagerCompat.notify(notificationId, builder.build());

Az értesítés fő összetevői:

  • Kis ikon: setSmallIcon(), a státuszsorban jelenik meg.
  • Cím: setContentTitle(), az értesítés fő szövege.
  • Szöveg: setContentText(), kiegészítő szöveg.
  • Értesítési csatorna (API 26+): Közös beállításokkal rendelkező értesítési csoport.
  • PendingIntent: Az akció, amely az értesítésre kattintáskor végrehajtódik.

Ezen kívül hozzáadhat nagy képet (setStyle(new NotificationCompat.BigPictureStyle())), akciógombokat (addAction()), beállíthat hangot, rezgést és más paramétereket.