Firebase Notification Api 27 bildirim gelmiyor

Mrb ;

Halihazırda çalışan bildirim api 27 seviyesinden sonra çalışmıyor neden neleri değiştirmek gerek sanırım api 27 ye uygun değişiklik yapmak gerekecek nereden olabilir ?

    +1

    Çağatay

    13 Haziran 2018

    Api 27 den sonrası Push Notification yapısını desteklemiyor Notification Channel yapman lazım Örnek: if blogu ile Build.Sdkversion kontrolu yapıp Oreodan sonrası için Notification Channel yapısını else blogu ilede Push Notification yapısını yazman gerekli  if(Build.VERSION.SDK_INT>Build.VERSION_CODES.O){ //Burada notification Channel yapısını yaz } else{ //Buradada push notification yaz  oreodan düşük sdklar burada çalışır oreo ve üstü sdklar yukarıdaki notification channel yapısıyla çalışacaktır artık. }/

      DuzceLy

      Çar, 20/06/2018 - 15:51
      Yeni birisi bunları nasıl anlayacak :)

      DuzceLy

      Çar, 20/06/2018 - 16:14
      Sanırım burada anlatıyor ; https://www.youtube.com/watch?v=2a4gqHolUIU

    -1

    Okan

    13 Haziran 2018

    Ben yeniyim tam olarak neleri değiştirmem gerek kodlar burada ; import android.app.Notification; import android.app.NotificationManager; import android.app.PendingIntent; import android.content.Context; import android.content.Intent; import android.media.RingtoneManager; import android.net.Uri; import android.support.v4.app.NotificationCompat; import android.util.Log; import com.google.firebase.messaging.FirebaseMessagingService; import com.google.firebase.messaging.RemoteMessage; import javax.security.auth.Subject; public class MyFirebaseMessagingService extends FirebaseMessagingService { //belli karakter sayısı private static final String TAG = "MyFirebaseMessagi"; @Override public void onMessageReceived(RemoteMessage remoteMessage) { Log.d(TAG, "From: " + remoteMessage.getFrom()); // notification geldiğinde konsolda yazdırılacak olan kısım Log.d(TAG, "Notification Message Body: " + remoteMessage.getNotification().getBody()); // alttaki metod sayesinde gönderilen notification alınıp metoda parametre olarak gönderiliyor. sendNotification(remoteMessage.getNotification().getBody()); } // notification göndermek için gerekli metod private void sendNotification(String messageBody) { Intent intent = new Intent(this,Anasayfa.class); intent.addFlags(Intent.FLAG_ACTIVITY_CLEAR_TOP); PendingIntent pendingIntent = PendingIntent.getActivity(this,0,intent,PendingIntent.FLAG_ONE_SHOT); Uri defaultSoundUri = RingtoneManager.getDefaultUri(RingtoneManager.TYPE_NOTIFICATION); NotificationCompat.Builder notificationBuilder = new NotificationCompat.Builder(this,"1") .setSmallIcon(R.mipmap.ic_launcher) .setContentTitle("Bildirim") .setStyle(new NotificationCompat.BigTextStyle().bigText(messageBody)) .setContentText(messageBody) .setAutoCancel(true) .setSound(defaultSoundUri) .setContentIntent(pendingIntent); NotificationManager notificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); notificationManager.notify(0, notificationBuilder.build()); } }  

      aeniserkaya

      Per, 14/06/2018 - 09:33
      https://www.mobilhanem.com/android-notification-channel-tanimlama-ve-kullanimi/ Bu linki inceleyebilirsin.

    0

    Okan

    03 Ağustos 2018

    Sorun çözüldü tamamen telefondan kaynaklı engellemi,ş bildirimi arka planda çalışmasına izin verdirmemiş asus

    0

    Okan

    29 Haziran 2018

    29.06.2018 İtibarı ile sorunum devam ediyor yardımcı olabilecek var mı ? Sorunum şu şekilde Api 27 de 8.0.0 android sürümünde mevcut kodlar ile uygulama açııkken bildirim gönderdiğimde geliyor ancak uygulama kapalıyken internette açık bildirim gelmiyor.. Bu android 7.0.0 ve 5.0.0 için denedim onlarda sorun yok program kapalı bile olsa bildirim geliyor bu ne ile alakalı ?? Dipnot / Belki benim telefonumda sorun vardır diyerek telefonu sıfırladım fabrika ayarlarına tekrar kurulum yaptım sorun devam ediyor.

    0

    Okan

    20 Haziran 2018

    Mevcut kodlar bunlar MyFirebaseMessaggingService deki kodlar  ; https://paste.ofcode.org/Q53j6HSeaLNJyqBJX4ubDv ve kanalı böyle tanımladım yine aynı sonuç bildirim gelmiyor program kapalıyken  ; https://paste.ofcode.org/BnSxEcKnLwEq94tHhNRqD9    

      cagatay347923

      7, 24/06/2018 - 14:23
      Merhaba cevap biraz geç olmuş olsada,Program kapalıyken bildirim gelmemesinin sebebi Service kullanmadığın için Service yazmalısın. O servisin arkaplanda çalışması lazım ki uygulama kapalı bile olsa arkada çalışan servis yardımı ile bildirim sağlayabilsin. Yeni bir java classı oluştur. bilmiyorsan solda paket dosyasının üstüne sağ tıklayıp java class seçeneğine bas. Sonra Service classının ismini yaz Örneğin MyService adlı bir java class'ı oluştur Örnek bir Service: public class MyService extends Service { @Nullable @Override public IBinder onBind(Intent intent) { return null; } @Override public int onStartCommand(Intent intent, int flags, int startId) { if(Build.VERSION.SDK_INT>= Build.VERSION_CODES.O){ //Notification Channel yapısını buraya yapıştır. } else{ //Burayada normal notification yapısını yapıştır } return START_STICKY; } @Override public void onDestroy() { super.onDestroy(); Log.d("LOG","OnDestroy metodu çalıştı."); } @Override public void onCreate() { super.onCreate(); Log.d("LOG","OnCreate metodu çalıştı."); } } Bu şekilde bir servis oluşturup arka planda çalışmasını sağlayabilirsin bunu sağlayanda onstartcommand metodundaki return START_STİCKY yapısıdır.

      DuzceLy

      Çar, 27/06/2018 - 17:37
      Öncekinde arkaplanda çalışması için ekstra birşey yazmadım ki onda nasıl çalışıyor peki ? Ayrıca benim telefonumda galiba sorun var 8.00 mesela diğer başka telefonlarda denedim çalışıyor arka planda 7.00 ve 5.0.0 sürümlerinde bile çalışıyor en son ki burada link olarak paylaştığım mevcut kodlar

    0

    Çağatay

    13 Haziran 2018

    private static final CHANNEL_ID="buraya bulunduğun paket ismini yaz" private static final CHANNEL_NAME="Buraya istedigin şeyi yazabilrisin" //Yukarıdakileri globale yani oncreate metodunun üstüne yazmalısın// NotificationChannel channel= new NotificationChannel(CHANNEL_ID, CHANNEL_NAME, NotificationManager.IMPORTANCE_DEFAULT); channel.enableLights(true); channel.enableVibration(true); .setLightColor(getColor(R.color.blue)); channel.setLockscreenVisibility(Notification.VISIBILITY_PRIVATE); getManager().createNotificationChannel(channel); getManager().createNotificationChannel(channel); NotificationManager mNotificationManager = (NotificationManager) getSystemService(Context.NOTIFICATION_SERVICE); Intent intentactivity = new Intent(getApplicationContext(), Gideceginsınıf.class); PendingIntent pendingIntent = PendingIntent.getActivity(getApplicationContext(),0, intentactivity, 0); mNotificationManager.createNotificationChannel(channel); Notification notification = new NotificationCompat.Builder(getApplicationContext()) .setSmallIcon(bildirim iconu) .setContentTitle("Bildirim basligi") .setContentText("Bildirim yazısı") .setContentIntent(pendingIntent) .setAutoCancel(true) .setChannelId(CHANNEL_ID).build(); mNotificationManager.notify(0, notification);   //Alttaki koduda en sona bir yere metotların altına yaz fakat classın içinde olmalı// public NotificationManager getManager() { if(manager==null){ manager=(NotificationManager)getSystemService(Context.NOTIFICATION_SERVICE); } return manager; }  

    Bu soruya cevap vermek için üye olmanız veya giriş yapmanız gerekmektedir.