HarmonyOS ile uygulama içi mesaj oluşturma

Celil Kırca
Huawei Developers - Türkiye
4 min readDec 7, 2021

Herkese selam. Bugünkü yazımızda App Messaging konusu üzerinde duracağız. Öncelikle nedir bu App Messaging? Uygulamanız, belirli kullanıcı davranışına dayalı olarak çeşitli biçimlerde mesajları tetikleyebilir ve aktif kullanıcılarla etkileşim kurmanıza yardımcı olur.

Giriş

App Messaging sayesinde mesajlarımızın nasıl görüneceğini ve nasıl gösterileceğini özelleştirebiliriz. 3 çeşit key function vardır şimdi kısaca bunlara değinip sonrasında mesaj türleri üzerinde duracağız.

Sending targeted messages: Uygulama içi mesajlar gönderilebilir. Kullanıcı aboneliğini ve ödeme yöntemleri ile ilgili mesajlar gönderilebilir böylece kullanıcı aktiviteleri iyileştirilmesi hedeflenir.

Customizing the message layout: yalnızca önceden hazırlanmış layoutları değil aynı zamanda kişiselleştirililmiş mesajlar için kodlarınızı yazabilirsiniz.

Collecting message statistics: Huawei Analytics kit sayesinde uygulama içi mesaj gösterimleri, mesaj tıklamaları, gibi temel istatikleri toplayabilirsiniz.

Mesaj Türleri

Şu anda app messaging modal dialog, banner message ve image message olmak üzere 3 adet mesaj türü içermektedir. Bu mesaj türlerinde dildiğinizi gibi mesaj içeriğini ve düzenini değiştirebilirsiniz.

  • Modal Dialog: başlık,resim, mesaj ve iki adete kadar buton içerebilir. Kullanıcınize zengin bir içerik göstermeniz açısından daha kullanışlıdır.
Modal Dialog
  • Banner Message: Ekranın üst kısmında küçük bir resim, mesaj ve başlık ile gösterilir.
Banner Message
  • Image Message: yalnızca resim içerir. Kullanıcı sayfaya erişebilmek için resime dokunabilir.
Image Message

Geliştirme Süreci

App messaging’i akrif etmeniz için öncesinde AppGallery Connect üzerinden developer hesabı oluşturmanız gerekmektedir. Bunun için resmi dokümana buraya tıklayarak ulaşabilirsiniz.

App messaging servisini enable etmek için AppGalley Connect üzerinden Grow’un altından App Messaging’i seçip ardından Enable Now butonuna tıklamanız gerekiyor.

SDK’yı entegre etme;

Öncelikle AppGallery Connect base SDK’yı entegre etmelisiniz. Gerekli dokümana buraya tıklayarak ulaşabilirsiniz. Bu adımdan sonra artık AppMessaging SDK’sını entegre edebiliriz. Aşağıdaki kodu Huawei DevEco Studio içerisinde uygulama düzeyinde buld.gradle dosyasına implement ediyoruz.

Bu adımdan sonar AppGallery Connect base SDK’yı MainAbility içerisindeki onStart() methodu içerisinde başlatıyoruz.

App messaging ile ilgili istatistikleri toplamak için uygulama düzeyindeki build.gradle dosyası içerisinde Huawei Analytics’i etkinleştirmeliyiz.

Uygulama içi mesaj oluşturma;

Appgallery Connect hesabımıza giriş yaptıktan sonra projemizi seçiyoruz ve Grow’un altındaki AppMessaging’in içerisinden New butonuna tıklıyoruz.

Ardından in-app messaging adını ve açıklamasını giriyoruz.

Açılır liste kutusundan mesaj türünü belirliyoruz. Resim ve buton ayarlarımızı yaptıktan sonra next butonuna tıklıyoruz. Ayarlar tamamlandıktan sonra mesajınızın ön izlemesini yapmak için preview butonuna tıklayabiliriz.

Bu aşamadan sonra hedef kullanıcılarımızı belirlememiz gerekiyor. Hedef kitlemizi belirledikten sonra Next butonuna tıklıyoruz.

Artık gönderim zamanını ayarlayabiliriz. Başlangıç ve bitiş zamanı belirliyoruz. Ardıdan mesaj ekranı çıkması için bir tetikleyici belirliyoruz. İki tür tetikleyici olan vardır. Önceden ayarlanmış olaylar ve Huawei analytics olayları. App messaging ile mesajın gösterleceği periyodu da belirleyebiliriz.

In-App Mesajlarını Gösterme;

App Messaging SDK’sının uygulama içi mesajları göstermesi için iki adet ön koşul vardır;

- Uygulama ön planda çalışmalı

- Bir kullanıcı, uygulama içi mesajın görüntüleneceği olayı tetikler. Ardından App Messaging SDK, AppGallery Connect sunucusundan gelen mesaj verilerini senkronize eder veya yerel önbellekten mesaj verilerini alır ve mesajın görüntülenip görüntülenmeyeceğini belirler.
App Messaging SDK, AppGallery Connect sunucusundan veri senkronizasyonunu etkinleştirmenize veya devre dışı bırakmanıza olanak tanır.

İlk olarak AGConnectAppMessaging instance’ını başlatmak için AGConnectAppMessaging.getInstance’I çağırmalıyız. Daha sonra AppGallery Connect sunucusundan veri senkronizasyonuna izin verilip verilmeyeceğini ayarlamak için AGConnectAppMessaging.setFetchMessageEnable’ı çağırıyoruz.

App Messaging SDK, mesaj görüntüleme işlevini etkinleştirmenize veya devre dışı bırakmanıza olanak tanır. İşlev varsayılan olarak etkindir.

Kullanıcılara anında yanıt vermek üzere uygulama içi mesajlaşma davranışını özelleştirmek için Uygulama Mesajlaşma SDK’sını kullanabilirsiniz. App Messaging SDK, mesaj görüntüleme, dokunma ve kapatma gibi olayları dinleyebilir.

AGConnectAppMessaging’in addOnClickListener, addOnDismissListener veya addOnDisplayListener’ı çağırarak bir listener’ı kaydedebilirsiniz.

Bunlara ek olarak kullanıcılara özelleştirilmiş görünümler gösterebilirsiniz.

Eğer özel görünümü kaldırmak isterseniz AGConnectAppMessaging.removeCustomView fonksiyonunu kullanabiliriz.

Artık uygulama içi mesaj yarattığımıza göre yayınlayabiliriz. AppGallery Connect içerisinden My Project kısmına giderek uygulama içi mesajımızı publish edebiliriz.

Özet

Bu yazımızda AppMessaging’in ne olduğunu ve HarmonyOS ile nasıl kullanabileceğimizi öğrendik. Umarım sizler için yararlı olmuştur. Bir sonraki yazımızda görüşmek üzere.

Kaynaklar

--

--