React Native - Kurulum

Bu sayfa React-Native-Related-Digital SDK kurulum klavuzudur.

Source

URL

Source

URL

GitHub

GitHub - relateddigital/react-native-related-digital: Mobile notifications and analytics

npm

npm: react-native-related-digital

Kurulum

  • SDK içerisinde ihtiyaç duyulan kütüphaneyi kurun

npm install @react-native-async-storage/async-storage

ya da

yarn add @react-native-async-storage/async-storage

 

  • Alttaki komutu çalıştırarak React-Native-Related-Digital SDK’sını kurun

npm install react-native-related-digital

ya da

 

  • Pod’ları yükleyin (Sadece IOS)

Alttaki komut satırlarını sırasıyla çalıştırın


SDK yüklemesi tamamlandıktan sonra kodları alttaki şekilde uygulamanıza ekleyin.

appAlias değeri iOS ve Android uygulamalar için farklı gönderilmelidir (Expo uygulamalar hariç)

Örnek;

const appAlias = Platform.OS === "ios" ? "RelatedStoreIOS" : "RelatedStoreAndroid";

RMC ekibinden alias, SID, OID ve datasource değerlerinizi istemeyi unutmayın.

Platform Entegrasyonları


Android

  • Bir Firebase projesi oluşturun. Size verilen Google-services.json dosyasını android/app klasörü altına kopyalayın. Örnek kullanım

  • Alttaki satırı android/build.gradle dosyanızın iki repositories bölümüne de ekleyin.

     

  • android/build.gradle dosyanızın dependencies bölümüne aşağıdaki satırları ekleyin. Örnek kullanım

     

  • minSdkVersion 21 olarak ayarlayın

  • compileSdkVersion ve targetSdkVersion 32 olarak ayarlayı.

     

  • android/app/build.gradle dosyanızın en altına aşağıdaki satırları ekleyin. Örnek kullanım

     

  • android/app/build.gradle dosyanızda defaultConfig bölümüne alttaki satırı ekleyin

 

  • Uygulama ön plandayken bildirim almak için AndroidManifest.xml dosyanızın applicationbölümüne aşağıdaki kodu ekleyin.

 

  • Geofence özelliğini etkinleştirmek için AndroidManifest.xml dosyanıza aşağıdaki kodu ekleyin.

     

  • Sdk’yı çalıştırmak için alttaki init kodunu MainApplication.java dosyanıza ekleyin.
    Geofence özelliğini etkin hale getirmek için Visilabs.CreateAPI fonksiyonunun son parametresini(12.) true değeri girin.

     


    Not: setNotificationTransparentSmallIcon fonksiyonuna atayacağınız icon tek katmanlı bir görsel formatı olmalıdır.

 

  • Yüklü uygulamaları raporlamak istiyorsanız alttaki kodu javascript bölümünde çalıştırın.


    Ayrıca alttaki yöntemlerden birini seçip AndroidManifest.xml dosyanıza ekleyin.

    Option 1

     

    Option 2



iOS

  • Push Notifications ve Background Modes->Remote Notifications özelliklerini etkinleştirin.



  • AppDelegate.h dosyanıza alttaki satırı ekleyin. Örnek kullanım

 

  • AppDelegate.h dosyanızdaki @interface ile başlayan satıra UNUserNotificationCenterDelegate parametresini ekleyin. Son hali alttaki gibi olmalı. Örnek kullanım

    Klasik React Native projelerinde

     

    Expo projelerinde



  • AppDelegate.m dosyanıza alttaki satırları ekleyin. Örnek kullanım

     

  • AppDelegate.m dosyanızda didFinishLaunchingWithOptions methodunun içerisindeki return ifadesinin hemen üzerine alttaki satırları ekleyin. Örnek kullanım

     

  • AppDelegate.m dosyanıza alttaki methodları ekleyin. Örnek kullanım

     

  • AppDelegate.m dosyasındaki didFinishLaunchingWithOptionsfonksiyonununun return ifadesinden hemen öncesine alttaki kodu ekleyin. 
    Not: In App ve Geofence özelliklerinin aktif olması için
    InAppNotificationsEnabled ve geofenceEnabled parametreleri true olmalıdır.
    Başlangıçta konum izninin alınmasını istemiyorsanız askLocationPermmissionAtStart parametresini false olarak ayarlayın. Ardından requestLocationPermission() işleviyle istediğiniz zaman izin talep edebilirsiniz.

     

  • SDK Swift kodu içerdiğinden ve xcode her hedefte en az bir boş swift dosyası gerektirdiğinden projenizin ios dizinine boş bir swift dosyası ekleyin. Empty.swift

  • iOS 14 ve sonraki sürümlerde AdvertisingTrackingID'yi kullanabilmek için Info.plist dosyanıza NSUserTrackingUsageDescription ekleyin.

  • Eğer _swift_getFunctionReplacement veya herhangi bir swift hatasından dolayı sorun yaşarsanız, projenizin Library Search Paths altındaki $(TOOLCHAIN_DIR)/usr/lib/swift-5.0/$(PLATFORM_NAME
    satırını kaldırın.

  • In-App Message kullanacaksanız proje hedefinizin Build Phases-> Copy Bundle Resourcesbölümüne aşağıdaki satırları ekleyin. 
    Create folder references seçeneğini seçin.

     

  • Görsel veya video gibi zengin içerikli push bildirim özelliklerini etkinleştirmek için alttaki adımları uygulayın.
    1- Projenize Targets altından Notification Service Extension ekleyin ve ismini RelatedDigitalNotificationService olarak değiştirin. Ardından bu hizmetin hedef iOS sürümünü 10.0 olarak değiştirin. Örnek kullanım

    2- Yeni eklenmiş olan NotificationService.m dosyasının içerisini alttakilerle değiştirin.
    Örnek kullanım


    3- Podfile dosyanızın kök seviyesine aşağıdaki satırları ekleyin. Örnek kullanım


    4- Podfile dosyanızın ana hedef bölümüne notification_service_post_install(installer) satırını ekleyin, alttaki şekilde gözükmeli. Örnek kullanım


    5- Sdk, Swift kodu içerdiğinden ve xcode her hedefte en az bir boş swift dosyası gerektirdiğinden, RelatedDigitalNotificationService hedefinize de boş bir swift dosyası ekleyin. Empty.swift

    6- Projenizin ios dizininde pod install komutunu çalıştırın.

  • Carousel push bildirim için
    1- Projenize Targets altından Notification Content Extension ekleyin ve ismini RelatedDigitalNotificationContent olarak değiştirin. Ardından bu hizmetin hedef iOS sürümünü 11.0 olarak değiştirin. Info.plist dışında RelatedDigitalNotificationContent altına yeni eklenen dosyaları kaldırın. Ardından aşağıdaki içeriğe sahip EMNotificationViewController.swift dosyasını ekleyin.


    2- Yeni eklenen RelatedDigitalNotificationContent/Info.plist dosyanıza alttaki satırları ekleyin, eğer varsa değiştirin.


    3- Podfile dosyanızın kök seviyesine alttaki satırları ekleyin.


    4- Xcode'da RelatedDigitalNotificationContenthedefini seçin. Aşağıdaki dosyaları 
    Build Phases-> Copy Bundle Resources bölümüne ekleyin. 
    Create folder references seçeneğini seçin.


    5- Deployment target değerini ios 10 yapın.


    6- Projenizin ios dizininde pod install komutunu çalıştırın.

  • Geofence konum hizmetleri tanımlamaları
    Uygulamanızda konum hizmetlerini etkinleştirmek için öncelikle aşağıdaki anahtarları Info.plist dosyanıza eklemeniz gerekir.

    - NSLocationAlwaysAndWhenInUseUsageDescription
    - NSLocationWhenInUseUsageDescription

    Bu izinlerin örnek uygulaması aşağıdaki gibidir:


    Ayrıca bölgeleri izlemek, bölge listesini yenilemek ve push bildirimlerini almak için Info.plist dosyanızda UIBackgroundModes altına aşağıdaki anahtarları eklemeniz gerekir.



 

 

Copyright 2020 Related Digital