Android OneSignal ile Push Notification Gönderimi

Android OneSignal ile Push Notification Gönderimi

Merhaba arkadaşlar,Android uygulama geliştirme dersleri anlattığımız mobilhanem.com sitemiz üzerinden bugün Android Push Notification göndermenin kolay yolu olan OneSignal Push Notification Servisi ile Push göndermeyi anlatacağım. Bildiğiniz üzere Parse şirketi, Parse SDK ile bildirim gönderme desteğini artık çekeceğini ve bu platformun kullanılmayacağını bildirdi. Parse SDK gibi hızlı ve ekstra bir sunucu oluşturmadan online olarak bildirim atabilmek için OneSignal servisini inceledik.

OneSignal çoklu platformlara bildirim desteği sağlar , uygulamarımızda kullanabilmemiz için ( Android, IOS, Amazon, Windows Phone, Unity 3D, Phonegap vb. ) gibi bir çok platforma desteği vardır. Android uygulamalarımıza bildirim gönderimini nasıl yaparız gelin inceleyelim:

İlk olarak GCM Api Key almamız gerekiyor Google Server API Key nasıl alınır bir çoğumuz bunu GCM ile Push Notification Gönderimi dersimizden biliyoruz.

1-) Google Cloud üyeliğini gerçekleştiriyoruz , eğer üye isek direk ilgili sayfaya yönleneceksiniz.

2-) Create Project segmesine tıklıyoruz ve karşımıza gelen kısımda proje ismini belirleyip Create diyoruz. ( Ben gördüğünüz gibi proje ismini OneSignalExample olarak belirledim. )

3-) Projemizi yarattıktan sonra Project Number kısmını göreceksiniz onu saklayın çünkü  android uygulamamızı yaratırken kullanacağız.

project_number

4-) Enable and manage APIs segmesine tıklıyoruz.

enable_google_api

5-) Google Cloud Messaging API‘sini Enable ediyoruz.

gcm_enable

6-) Google Cloed Messaging API’sini enable ettikten sonra karşımıza çıkan bölümde Go to Credentials butonuna tıklıyoruz. Eğer aşağıdaki kısım çıkmazsa Dashboard’un sol tarafından bu bölüme ulaşabiliriz.

credentials

7-) Create New Key segmesine tıklıyoruz ve karşımıza gelen ekranda Server key seçeneğini seçiyoruz.

create_new_key

8 -) Karşımıza gelen ekranda direkt olara Create segmesine tıklıyoruz.

key_create

9-) Sonunda API Key değerimiz oluşturuldu bunuda android uygulamamızda kullanacağımız için saklıyoruz.

10-) OneSignal sitesine giriyoruz.

11-) OneSignal’e login olabilmek için kayıt olmamız gerekiyor , eğer kayıt olmadıysak gerekli işlemleri tamamlayıp siteye kayıt oluyoruz.

12-) Kayıt işleminden sonra OneSignal sitesine tekrardan girip projemizi yaratıyoruz. Google Android segmesini active hale getirip , Configure seçeneğini seçiyoruz.

platforms_onesignal

13-) Yukarıda anlatmış olduğum ve elde etttiğimiz Google API Key değerimizi ilgili yere yapıştırıyoruz, Save butonuna basıyoruz.

editgcm

14-) Daha sonra Select SDK segmesinden Native Android seçeneğini seçiyoruz.

select_sdk

15-) Install SDK seçeneğinde ise OneSignal’in app id si yaratılmış olacak bunuda android uygulamamızda kullanacağız , burdaki işlemleri başarı ile bitirebilmek için şimdi Android Studio‘ da bir takım kodlamalar yapmamız gerekmektedir.

16-) Aşağıda yer alan aşamaları sırasıyla yaptıktan sonra bu aşamada Test Settings kısmında uygulamamıza isterseniz deneme olarak bildirim gönderebilirsiniz ve kayıtlı olan cihaz sayısını yine bu kısımdan görebilirsiniz. ( not: Bildirim gelmesi için cihazın sisteme kayıtlı olması gerekmektedir! bu yüzden anlatılanları adım adım uygulayınız. )

1-) İlk olarak build.gradle kısmını açıyoruz ve dependencies kısmına aşağıdaki kodları yapıştırıyoruz.

compile ‘com.onesignal:OneSignal:2.+@aar’
compile ‘com.google.android.gms:play-services-gcm:+’
compile ‘com.google.android.gms:play-services-analytics:+’
compile “com.google.android.gms:play-services-location:+”

compile ‘com.google.android.gms:play-services-gcm:+’

compile ‘com.google.android.gms:play-services-analytics:+’

compile “com.google.android.gms:play-services-location:+”

2-) Yukarıda elde etmiş olduğumuz OneSignal app id ve Google Project Number değerlerini ilgili yerlere yazıyoruz. ( build.gradle içinde )

android {
defaultConfig {
manifestPlaceholders = [manifestApplicationId: “${applicationId}”,
onesignal_app_id: “ONESIGNAL APP ID”,
onesignal_google_project_number: “GOOGLE PROJECT NUMBER”]
}
}

android {

    defaultConfig {

        manifestPlaceholders = [manifestApplicationId: “${applicationId}”,

                                onesignal_app_id: “ONESIGNAL APP ID”,

                                onesignal_google_project_number: “GOOGLE PROJECT NUMBER”]

    }

}

3-) Application sınıfı yaratıyoruz ve aşağıdaki kod yapısını kullanıyoruz.

public class OneSignalApp extends Application {

@Override
public void onCreate() {
super.onCreate();

OneSignal.setLogLevel(OneSignal.LOG_LEVEL.DEBUG, OneSignal.LOG_LEVEL.DEBUG);

OneSignal.startInit(this).init();

}

public class OneSignalApp extends Application {

 

    @Override

    public void onCreate() {

        super.onCreate();

 

        OneSignal.setLogLevel(OneSignal.LOG_LEVEL.DEBUG, OneSignal.LOG_LEVEL.DEBUG);

 

        OneSignal.startInit(this).init();

 

    }

4-) En son olarak android uygulamamızı gerçek cihazda run ediyoruz. Böylece cihazımızın kaydını OneSignal platformunda oluşturduk. Şimdi yukarıda yer alan 16′ncı maddeye geri dönüp bildirim işlemlerini tamamlayabilirsiniz.

Deneme amaçlı olarak uygulamamıza bildirim göndermek için OneSignal sitesinden başlık ve mesaj içeriğini doldurduktan sonra bildirimimizi gönderdik

msg_screen

Cihazımıza gelen bildiriminde ekran görüntüsü aşağıdadır:

push_example

Evet arkadaşlar bildirim işlemini tamamladık biraz uzun bir yazı oldu ama sıfırdan bildirim işlemlerini oluşturmak isteyenler için yararlı olacaktır. Aşağıda kaynak kod mevcuttur isterseniz kaynak kodu indirip kendi Google Project Number’ınızı ve OneSignal App Id‘inizi yazarak kullanabilirsiniz. OneSignal sitesini incelemenizi tavsiye ederim bildirim konusunda daha detaylı dokumanlar bulabilirsiniz. ( bildirim iconu değiştirme, kişiye özel bildirim gönderme vb. )

Ders hakkında soru ve önerilerinizi çekinmeden yorum bırakabilirsiniz. Bol Android’li günler sizin olsun, bir dahaki dersime görüşmek üzere 🙂

 

0

Yorum Yap
0 Yorum yapan