Uygulamanızın, devam eden bir alarm veya gelen arama gibi belirli durumlarda kullanıcının dikkatini acilen çekmesi gerekebilir. Android 9 (API düzeyi 28) veya önceki sürümleri çalıştıran cihazları hedefleyen uygulamalarda, bu durumu uygulama arka plandayken bir etkinlik başlatarak ele alabilirsiniz. Bu belgede, Android 10 (API düzeyi 29) ile Android 13 (API düzeyi 33) arasındaki sürümlerin yüklü olduğu cihazlarda bu davranışın nasıl elde edileceği açıklanmaktadır.
POST_NOTIFICATIONS iznini ekleyin
Android 13'ten itibaren AndroidManifest.xml
dosyanıza aşağıdaki satırı ekleyin:
<manifest ...> <uses-permission android:name="android.permission.POST_NOTIFICATIONS"/> <application ...> ... </application> </manifest>
Bunu yaptıktan sonra bildirim kanalı oluşturabilirsiniz.
Bildirim kanalı oluşturma
Bildirimlerinizi düzgün şekilde göstermek ve kullanıcının bildirimleri uygulama ayarlarında yönetmesine izin vermek için bir bildirim kanalı oluşturun. Bildirim kanalları hakkında daha fazla bilgi için Bildirim kanalları oluşturma ve yönetme başlıklı makaleyi inceleyin.
Bildirim kanallarınızı Application
sınıfınızın onCreate
yönteminde oluşturun:
Kotlin
class DACapp : Application() { override fun onCreate() { super.onCreate() val channel = NotificationChannel( CHANNEL_ID, "High priority notifications", NotificationManager.IMPORTANCE_HIGH ) val notificationManager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager notificationManager.createNotificationChannel(channel) } }
Kullanıcı uygulamanızı ilk kez çalıştırdığında, uygulamanızın Uygulama bilgileri sistem ekranında Şekil 1'deki gibi bir şey görür:

Bildirim izinlerini yönetme
Android 13'ten itibaren, kullanıcılara bildirim göstermeden önce bildirim izinleri isteyin.
Minimum uygulama aşağıdaki gibi görünür:
Kotlin
val permissionLauncher = rememberLauncherForActivityResult( contract = ActivityResultContracts.RequestPermission(), onResult = { hasNotificationPermission = it } ) ... Button( onClick = { if (!hasNotificationPermission) { if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.TIRAMISU) { permissionLauncher.launch(Manifest.permission.POST_NOTIFICATIONS) } } }, ) { Text(text = "Request permission") }
Cihazınızda Android 13 çalışıyorsa Request
permission
düğmesine dokunduğunuzda Şekil 2'de gösterilen iletişim kutusu tetiklenir:

Kullanıcı izin isteğini kabul ederse uygulamanın Uygulama bilgileri bölümü Şekil 3'teki gibi görünür:

Yüksek öncelikli bildirim oluşturma
Bildirimi oluştururken açıklayıcı bir başlık ve mesaj ekleyin.
Aşağıdaki örnekte bir bildirim yer almaktadır:
Kotlin
private fun showNotification() { val notificationManager = getSystemService(Context.NOTIFICATION_SERVICE) as NotificationManager val notificationBuilder = NotificationCompat.Builder(this, CHANNEL_ID) .setSmallIcon(R.drawable.baseline_auto_awesome_24) .setContentTitle("HIGH PRIORITY") .setContentText("Check this dog puppy video NOW!") .setPriority(NotificationCompat.PRIORITY_HIGH) .setCategory(NotificationCompat.CATEGORY_RECOMMENDATION) notificationManager.notify(666, notificationBuilder.build()) }
Bildirimi kullanıcıya gösterme
showNotification()
işlevinin çağrılması, bildirimi aşağıdaki şekilde tetikler:
Kotlin
Button(onClick = { showNotification() }) { Text(text = "Show notification") }
Bu örnekteki bildirim, Şekil 4'teki gibi görünür:

Devam eden görev bildirimi
Kullanıcıya bildiriminizi gösterdiğinizde kullanıcı, uygulamanızın uyarısını veya hatırlatıcısını onaylayabilir ya da kapatabilir. Örneğin, kullanıcı gelen bir telefon aramasını kabul edebilir veya reddedebilir.
Bildiriminiz devam eden bir bildirimse (ör. gelen telefon araması) bildirimi bir ön plan hizmetiyle ilişkilendirin. Aşağıdaki kod snippet'inde, ön plan hizmetiyle ilişkili bir bildirimin nasıl görüntüleneceği gösterilmektedir:
Kotlin
// Provide a unique integer for the "notificationId" of each notification. startForeground(notificationId, notification)
Java
// Provide a unique integer for the "notificationId" of each notification. startForeground(notificationId, notification);