Sobes.tech
Junior

Android'de nasıl bildirim oluşturulur?

sobes.tech yapay zeka

AI'dan gelen yanıt

Android'de bildirim oluşturmak için aşağıdaki adımları izlemelisiniz:

  1. Bir bildirim kanalı oluşturun (API seviyesi 26 ve üzeri için).
  2. NotificationCompat.Builder kullanarak bildirimi oluşturun.
  3. Bildirimi bildirim yöneticisi aracılığıyla gösterin.
// Bildirim kanalı oluşturma (API 26+)
if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.O) {
    String channelId = "my_channel_id";
    CharSequence channelName = "Kanalım";
    String channelDescription = "Kanalımın açıklaması";
    int importance = NotificationManager.IMPORTANCE_DEFAULT;
    NotificationChannel channel = new NotificationChannel(channelId, channelName, importance);
    channel.setDescription(channelDescription);
    // Kanalı sisteme kaydet
    NotificationManager notificationManager = getSystemService(NotificationManager.class);
    notificationManager.createNotificationChannel(channel);
}

// Bildirim yapıcıyı oluşturma
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, "my_channel_id") // Kanal ID'sini belirtin
        .setSmallIcon(R.drawable.ic_notification) // Bildirim ikonu
        .setContentTitle("Bildirim başlığı") // Başlık
        .setContentText("Bildirim metni") // Metin
        .setPriority(NotificationCompat.PRIORITY_DEFAULT); // Öncelik

// Bildirim tıklaması için PendingIntent oluşturma
// Örneğin, bir aktiviteyi açma
Intent intent = new Intent(this, MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE); // API S+ için bayrak
builder.setContentIntent(pendingIntent);

// Bildirimi göster
NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(this);
int notificationId = 1; // Benzersiz ID
notificationManagerCompat.notify(notificationId, builder.build());

Bildirimin temel bileşenleri:

  • Küçük simge: setSmallIcon(), durum çubuğunda gösterilir.
  • Başlık: setContentTitle(), bildirimin ana metni.
  • Metin: setContentText(), ek metin.
  • Bildirim kanalı (API 26+): Ortak ayarlarla bildirim grubu.
  • PendingIntent: Bildirime tıklandığında gerçekleştirilen eylem.

Ayrıca, büyük bir resim (setStyle(new NotificationCompat.BigPictureStyle())), eylem düğmeleri (addAction()), ses, titreşim ve diğer parametreler eklenebilir.