Xamarin.Forms Local Push Notification

Merhaba,

Plugin tanımaya ve örnekler yapmaya devam ediyoruz. Bu makalemizde Local Push Notification'i inceleyeceğiz.

Local PN'i kısaca tanımlamak gerekirse, kod içerisinde tetiklenen bir metot ile kullanıcının telefonuna çok kolay ve zahmetsiz bir şekilde bildirim göndermenizi sağlıyor. Her platform için (Android, iOS, WinPhone ..) native bildirim görünümüne sahiptir.

Projemize ekledikten sonra basit bir form ekranı ile örneğimizi gerçekleştirelim.

Plugin Install

Form

Local PN'i kullanabileceğimiz 3 adet metot var.

  1. Show(title, body)
  2. Show(title, body, id, datetime)
  3. Cancel(id)

1. metot ile direkt olarak notification gönderebiliyoruz.

2. metot ile gönderdiğiniz notification'a id ve datetime verebiliyorsunuz. (Datetime ile gönderim tarihini ayarlayabiliyorsunuz)

3. metot ile id verdiğiniz notification'i silebiliyorsunuz.

OnInsert

Senaryomuzda gördüğümüz gibi 2 adet notification planladık ve verimiz insert edildikten 30 sn. sonra push olmasını istediğimizi söyledik. Fakat son metot ile 2. push işlemini iptal ediyoruz ve 30 sn. sonra tek bir push notification işleminin olacağını göreceğiz.

Push Form Push On

Android özelinde notification icon'u değiştirebiliyorsunuz. Uygulamanızın iconunu koyabilirsiniz.

LocalNotificationsImplementation.NotificationIconId = Resrouce.Drawable.YOU_ICON_HERE

iOS ortamında sorunsuz push gönderebilmeniz için notification register işlemi yapmanız gerekmektedir.

iOS Access

NotificationSettings ile gerekli izinleri uygulamanız açıldığında soracak ve eğer izin verirseniz push işlemleri başarılı bir şekilde çalışacaktır.

iOS Push Access

iOS Push Form iOS Push Done

WinPhone için ise, Package.appxmanifest altında Toast Capable seçeneğini Yes olarak işaretlemelisiniz.

WinPhone Notification

Kaynak kodları github üzerinden indirebilirsiniz.

Görüşmek üzere.

Yiğit

Xamarin Developer, Consultant & Architect. Community Leader and Director of Xamarin Türkiye

8 Comments

You can post comments in this post.


  • Merhaba Yiğit Hocam,

    Derslerinizi Açıkakademi’den takip ediyorum. Gerçekten çok faydalı ve başarılı eğitimler veriyorsunuz. Öncelikle bunun için teşekkür ederim.

    Bir cross-platform uygulaması üzerinde çalışıyorum. Kullanıcının seçtiği tarih ve saatten itibaren, yine kullanıcının belirlediği bir süre geçtikten sonra bildirim gelmesini istiyorum. Eğitim videonuzdaki işlemleri yapmama rağmen “Systm.NotImplementedException” hatası alıyorum. Hatta videodaki gibi süre belirlemeden bildirim çubuğuna sadece “title” ve “body” yazmaya çalıştığımda bile aynı hata geliyor. Acaba sebebi ne olabilir? Yardımcı olursanız sevinirim. Şimdiden teşekkürler.

    Kolay gelsin.

    Samet Abbak 7 sene ago Reply


    • Selam, eger hata aldigin ekranlari paylasirsan inceleyebilirim.

      Yiğit 7 sene ago Reply


      • Hocam, nasıl olduğunu anlamadım ama düzeldi. Bazı ayarları değiştirip denedim yine hata verdi, tekrar eski haline getirdim, kodlarda hiçbir değişiklik yapmadım ve düzeldi. İlginiz için tekrar teşekkürler.

        Samet Abbak 7 sene ago Reply


  • Merhaba Yiğit Hocam,
    Xamarin’e yeni başladım sayılır. Anlattığınız uygulamayı yaptım fakat uygulama açıkken bildirimler geliyor ama uygulama kapalıyken gelmiyor.
    Uygulamam kapalıyken de bildirim gelmesini istiyorum. Bunu nasıl yapabilirim?

    Murat ALTUNTAŞ 6 sene ago Reply


    • Murat Selam,

      Bunun icin Remote Push Notification islemlerini yapmak gerekiyor. Acikakademi 7. ve 8. hafta videolarini izlemeni oneririm.

      Yiğit 6 sene ago Reply


  • Merhabalar,
    Local Push notifications ile bildirim gönderdiğim zaman uygulamanın yüklü olduğu tüm cihazlara bildirim mi gider? Ben kullanıcı ya göre bildirim göndernek istiyorum da,Örn: “X” kullanıcısının telefonuna bildirim gönderdiğim zaman “Y” kullanıcısının telefonunda görünmesini istemiyorum da.Bunu local notifications ile yapabilir miyim?Yardımcı olursanız sevinirim.

    Dilan TUFAN 5 sene ago Reply


    • Local pushnotification ile herkese notification gonderebilirsiniz fakat tetiklemeniz gerekir.

      Yiğit 5 sene ago Reply


  • Hocam MAUI Blazor kullanıyorum. Xamarin’in push notification’unu entegre edip kullanabileceğimizi araştırdım fakat yöntemini, yolunu bilmiyorum tam olarak. Böyle birşey mümkün müdür gerçekten? mümkünse nasıl yapabiliriz ?

    Sehil SEVGİLİ 2 sene ago Reply


Post A Reply