Knuff ile Push Notification Testi

Image for post
Image for post

Knuff, ıslak terliğe çorabınızla bastıktan sonra cebinizden çıkardığınız yeni kuru çoraplarınızdır. Sayesinde push notification testimizi servis kullanmadan test edebiliyoruz. İşte böyle bir nimet bu Knuff.

İndirmek için → Knuff

Xcode üzerinde push notification için gerekli geliştirmeleri yaptığınızı ve başarılı bir şekilde bildirimleri aldığınızı varsayıyorum. Hadi çalıştıralım şu lanet olası şeyi !

Device id veya device token da denilir. Herhangi bir uygulama için her yükleyişinizde cihazınıza özel oluşturulan String türünde bir değerdir. Uygulamayı silip tekrar yüklediğinizde sıfırlanır. Identifier veya UID ile karıştırmayın.

AppDelegate sınıfında didRegisterForRemoteNotificationsWithDeviceToken metodunu kullanarak device id’yi öğrenebiliriz.

Az sonra Knuff’da kullanacağımız için lütfen id’yi bi yere not alın. Unutmayın, uygulamayı silip tekrar yüklediğinizde device id değişir.

Tam buradan Knuff’ı indirmiştik. Açıyoruz ve önümüze şöyle bir ekran geliyor.

Image for post
Image for post

1- Custom: Uygulamamızın sertifikası ile bildirim göndereceğimiz yer.
Knuff iOS: Knuff’ın çalıştığından emin olmak için iOS uygulamasını indirerek bildirim gönderebilirsiniz. Öncelikle uygulamayı açıp device id’nizi almasına izin verin. Sonra MacOS uygulamasında Knuff iOS’’dan devices’ı seçin ve kendi telefonunuzu seçin.

2- Choose butonu ile uygulamamızın push notification sertifikasını seçiyoruz. Xcode’da kullandığınız provizyonun ortamı ile push notification’ın ortamının aynı olduğundan emin olun. İkisi de ya development ya da distribution olmalı. Örneğin ben Xcode’da development provizyonunu kullandığım için choose butonuna basıp uygulamamın“Apple Development IOS Push Services: com.xxx.xxx” sertifikasını seçiyorum.

3- Device id’mizi buraya yapıştırıyoruz.

4- Gönderilen bildirimler json formatındadır. Bu json’a ekleme yaparak bildirime göre aksiyon alabiliriz.

Son olarak Knuff’daki bildirim json’ım şu şekilde;

Uygulamayı arka plana atın veya tamamen kapatın ve push butonuna basın.

Image for post
Image for post

Bildirimleri 2 gruba ayırmak istiyorum; uygulama kapalıyken gelen bildirimler, uygulama açıkken gelen bildirimler.

didReceiveRemoteNotification metodunda kontrol ederiz.

Uygulama önyüzde açıkken bildirim gelirse bildirim ekranında göremezsiniz.

Uygulama tamamen kapalıyken gelen bildirimi didFinishLaunchingWithOptions metodunda kontrol etmemiz gerekiyor.

AppDelegate sınıfında actionType adında bir String oluşturdum. Daha sonra bu sınıfı çağırarak actionType değerine erişeceğiz. Uygulama başladığında ilk açılacak controller’ın viewDidLoad metodunda actionType’ı kontrol ediyoruz.

Aldığımız değere göre artık istediğimiz aksiyonu alabiliriz.

Get the Medium app

A button that says 'Download on the App Store', and if clicked it will lead you to the iOS App store
A button that says 'Get it on, Google Play', and if clicked it will lead you to the Google Play store