Junior
Kuidas luua teavitus Androidis?
sobes.tech AI
Vastus AI-lt
Selleks, et luua Androidis teavitus, tuleb teha järgmised sammud:
- Loo teavituskanal (API tasemel 26 ja kõrgem).
- Koosta teavitus
NotificationCompat.Builderabil. - Näita teavitust teavituste halduriga.
// Teavituskanaali loomine (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);
// Registreeri kanal süsteemis
NotificationManager notificationManager = getSystemService(NotificationManager.class);
notificationManager.createNotificationChannel(channel);
}
// Koosta teavituse ehitaja
NotificationCompat.Builder builder = new NotificationCompat.Builder(this, "my_channel_id") // Näita kanali ID-d
.setSmallIcon(R.drawable.ic_notification) // Ikon
.setContentTitle("Teavituse pealkiri") // Pealkiri
.setContentText("Teavituse tekst") // Tekst
.setPriority(NotificationCompat.PRIORITY_DEFAULT); // Prioriteet
// Loo PendingIntent tegevuseks, kui teavitus on klõpsatud
// Näiteks, avada aktiivsus
Intent intent = new Intent(this, MainActivity.class);
PendingIntent pendingIntent = PendingIntent.getActivity(this, 0, intent, PendingIntent.FLAG_UPDATE_CURRENT | PendingIntent.FLAG_IMMUTABLE); // API S+ märk
builder.setContentIntent(pendingIntent);
// Näita teavitust
NotificationManagerCompat notificationManagerCompat = NotificationManagerCompat.from(this);
int notificationId = 1; // Unikaalne ID
notificationManagerCompat.notify(notificationId, builder.build());
Peamised teavituse komponendid:
- Väike ikoon:
setSmallIcon(), kuvatakse olekuribal. - Pealkiri:
setContentTitle(), peamine tekst. - Tekst:
setContentText(), täiendav tekst. - Teavituse kanal (API 26+): Rühm teavitusi ühiste seadistustega.
- PendingIntent: Tegevus, mis toimub teavituse klõpsamisel.
Lisaks saab lisada suure pildi (setStyle(new NotificationCompat.BigPictureStyle())), tegevusnupud (addAction()), heli, vibratsiooni ja muid parameetreid.