...
12 farklı In-App Message tasarımı mevcut:
Pop-up - Görsel, Başlık, Yazı & Buton | Mini - İkon & Yazı | Tam Ekran Görsel |
Tam Ekran Görsel ve Buton | Pop-up - Görsel, Başlık, Yazı ve Buton | Pop-up Anket |
Pop-up - Yazı ve Butonlu NPS | Native Alert & Action Sheet | 1-10 Puanlama NPS |
Yıldızlı Anket & İkinci Popup | Yarım Ekran Görsel | Carousel |
Video | Kulakçık | |
Eğer inappler için eklediğiniz linkleri kendiniz yönetmek isterseniz aşağıdaki adımı uygulayabilirsiniz.
...
RMC panelden in-app message’da olduğu gibi çarkıfelek oluşturduktan sonra her customEvent çağırdığınız zaman çarkıfelek olup olmadığı kontrol edilir ardından çarkıfelek gösterilir.
Çarkıfelek Yarım Görünüm | Çarkıfelek Tam Görünüm |
---|---|
Çarkıfelek’te slice’dan gelen linki almak için aşağıdaki adımı izleyebilirsiniz ve kullanıcılarınız istediğiniz sayfaya yönlendirebilirsiniz.
Code Block |
---|
func sliceListener() {
NotificationCenter.default.addObserver(forName: Notification.Name("InAppLink"), object: nil, queue: .main) { notification in
if let userInfo = notification.userInfo, let link = userInfo["link"] as? String {
print("Received InAppLink: \(link)")
}
}
} |
Kazı Kazan (Scratch To Win)
...
RMC panel üzerinden oluşturduğunuz kazı-kazan aksiyonunu aşağıdaki gibi tetikleyebilirsiniz.
...
App Banner
App Banner aksiyonunu kullanmak için öncelikle uygulamanızda istediğiniz bir alanda UIView oluşturup eklemeniz gerekmektedir. Ardından getBannerView metodunu çağırarak bannerları bu UIView içerisinde gösterebilirsiniz. Aşağıda örnek olarak bir UIView oluşturma ve bu UIView içerisinde bannerları göstermeyi bulabilirsiniz.
Code Block | ||
---|---|---|
| ||
let bannerView = UIView()
bannerView.translatesAutoresizingMaskIntoConstraints = false
self.view.addSubview(bannerView)
NSLayoutConstraint.activate([bannerView.topAnchor.constraint(equalTo: self.view.topAnchor,constant: 80),
bannerView.heightAnchor.constraint(equalToConstant: 80),
bannerView.leadingAnchor.constraint(equalTo: self.view.leadingAnchor),
bannerView.trailingAnchor.constraint(equalTo: self.view.trailingAnchor)])
bannerView.backgroundColor = .black
var props = [String:String]()
props["OM.inapptype"] = "banner_carousel"
RelatedDigital.getBannerView(properties: props) { banner in
if let banner = banner {
banner.delegate = self
banner.translatesAutoresizingMaskIntoConstraints = false
bannerView.addSubview(banner)
NSLayoutConstraint.activate([banner.topAnchor.constraint(equalTo: bannerView.topAnchor),
banner.bottomAnchor.constraint(equalTo: bannerView.bottomAnchor),
banner.leadingAnchor.constraint(equalTo: bannerView.leadingAnchor),
banner.trailingAnchor.constraint(equalTo: bannerView.trailingAnchor)])
}
} |
Dilerseniz properties parametresi ile ekstra query parametreleri gönderebilirsiniz. Eğer kullanmak istemezseniz properties parametresini properties: [String:String] olarak değiştirebilirsiniz.
Kullanıcılarınız bannera click işlemini gerçekleştirdiğinde deeplinklerin sizin tarafınızdan handle edilip yönlendirme yapılması gerekmektedir. Bunun için ilgili class’a BannerDelegate’i eklemelisiniz.
Code Block | ||
---|---|---|
| ||
class ViewController: UIViewController, BannerDelegate |
Ardından aşağıdaki fonksiyonu ekleyerek kendinize göre düzenleyebilirsiniz.
Code Block | ||
---|---|---|
| ||
func bannerItemClickListener(url: String) {
print(url)
} |
Ürün Durum Bilgisi
RMC Panelde tanımladığınız Ürün Durum Bilgisi aksiyonu Ürün Görüntüleme, Sepete Ekleme ve Favoriye Ekleme/Çıkarma eventlerinde çalışmaktadır. Bu eventlerde ürün idnin gönderildiğinden emin olmalısınız.
...
Ürün önerileri, SDK’nın recommend metoduyla elde edilir. Ürün önerilerini almak için zoneId, productCode ve complete olan 3 2 zorunlu argümanı iletmelisiniz.
RDProduct
sınıfı aşağıdaki özelliklere bakar:
Property | Type |
---|---|
code | String |
title | String |
img | String |
dest_url | String |
brand | String |
price | Double |
dprice | Double |
cur | String |
dcur | String |
freeshipping | Bool |
samedayshipping | Bool |
rating | Int |
comment | Int |
discount | Double |
attr1 | String |
attr2 | String |
attr3 | String |
attr4 | String |
attr5 | String |
Completion yönteminde verilen argümanlar için önerilen ürünler mevcutsa, ürün dizisini işlemeniz gerekir.
...