- Forum-Beiträge: 3
01.11.2017, 19:26:38 via Website
01.11.2017 19:26:38 via Website
Hallo,
ich frage mich ob es in Android Studio möglich ist eine EINMALIGE Push Notification zu coden. Momentan habe ich einen Code der gut funktioniert. Der Code wird über einen Button ausgelößt und liegt in einem Service da ich ihn aus Ordnungsgründen nicht in die MainActivity schreiben wollte. Nun möchte ich das diese Benachrichtigung aber nur bei der ersten Anwendung der App und somit beim ersten Button klick angezeigt wird und die Notification so nur einmalig ausgegeben wird.Also wenn ein User sich die App lädt und dann diesen Button betätigt, soll eine Anleitung einmalig ausgegeben werden.Ich hoffe jemand kann mir helfen.
Mein Notification-Code:
import android.app.NotificationManager;
import android.app.PendingIntent;
import android.app.Service;
import android.content.Intent;
import android.graphics.Color;
import android.os.IBinder;
import android.support.v4.app.NotificationCompat;
public class NotificationDisplayService extends Service {
public NotificationDisplayService() {
}
final int NOTIFICATION_ID = 16;
@Override
public IBinder onBind(Intent intent) {
}
@Override
public int onStartCommand(Intent intent, int flags, int startId) {
displayNotification("Tipps ", "Anleitung die nur ein mal gezeigt werden soll.");
stopSelf();
return super.onStartCommand(intent, flags, startId);
}
private void displayNotification(String title, String text){
Intent notificationIntent = new Intent(this, LanisActivity.class);
PendingIntent notificationPendingIntent = PendingIntent.getActivity(this, 0, notificationIntent, 0);
NotificationCompat.Builder notification = new NotificationCompat.Builder(this)
.setContentTitle(title)
.setContentText(text)
.setSmallIcon(R.drawable.a4)
.setColor(getResources().getColor(R.color.colorPrimaryDark))
.setVibrate(new long[]{0, 400, 0, 0})
.setLights(Color.WHITE, 0, 0)
.setContentIntent(notificationPendingIntent)
.setAutoCancel(true)
.setPriority(NotificationCompat.PRIORITY_HIGH)
.setStyle(new NotificationCompat.BigTextStyle().bigText(text));
NotificationManager notificationManager = (NotificationManager) getSystemService(NOTIFICATION_SERVICE);
notificationManager.notify(NOTIFICATION_ID, notification.build());
}
}
— geändert am 01.11.2017, 20:42:36
Empfohlener redaktioneller Inhalt
Mit Deiner Zustimmung wird hier ein externer Inhalt geladen.
Mit Klick auf den oben stehenden Button erklärst Du Dich damit einverstanden, dass Dir externe Inhalte angezeigt werden dürfen. Dabei können personenbezogene Daten an Drittanbieter übermittelt werden. Mehr Infos dazu findest Du in unserer Datenschutzerklärung.