iOS 14'ü destekleme

iOS 14.5 ile Apple, geliştiricilerin, kullanıcıları takip edebilmeleri veya cihazlarının reklam tanımlayıcılarına (IDFA) erişebilmeleri için Uygulama İzleme Şeffaflığı çerçevesi aracılığıyla kullanıcıdan izin almasını zorunlu kılmaktadır. Daha fazla ayrıntı için Apple'ın Kullanıcı Gizliliği ve Veri Kullanımı ve Apple'ın Uygulama İzleme Şeffaflığı belgelerine bakın.

Etkilenen Firebase ürünleri

Firebase SDK'ları IDFA'ya erişmez, ancak bazılarının Google Analytics ile IDFA erişimini gerektirebilecek entegrasyonları vardır.

Aşağıdaki tabloda, Apple platformlarında bulunan Firebase ürünleri listelenmekte ve IDFA'ya erişilemediği takdirde her ürünün işlevselliğinin nasıl etkileneceği açıklanmaktadır.

Ürün IDFA'ya erişilemiyorsa etkisi
A/B Testi A/B Testinin Google Analytics ile entegrasyonundaki bazı hedefleme verileri (demografik bilgiler gibi) IDFA'dan türetilir. IDFA'ya erişimi olmayan uygulamalarda bu hedefleme kullanılamaz.
Uygulama Kontrolü Etkisiz
Uygulama Dağıtımı Etkisiz
Kimlik doğrulama Kimlik Doğrulama ve Google ile Oturum Açma ve Telefon Kimlik Doğrulaması gibi birinci taraf Kimlik Doğrulama sağlayıcıları üzerinde herhangi bir etkisi yoktur.
Crashlytics Etkisiz. Gerçek zamanlı kilitlenme verileri ve kırıntıları sağlayan Crashlytics'in Google Analytics ile entegrasyonu, IDFA'ya bağlı değildir.
Dinamik Bağlantılar Bağlantı açma işlevine etkisi yoktur. Google Analytics ile birlikte kullanıldığında bağlantı dönüştürme etkinliklerine ilişkin ilişkilendirme kullanılamaz.
Bulut Firestore Etkisiz
Bulut İşlevleri Etkisiz
Uygulama İçi Mesajlaşma Etkisiz
Firebase kurulumları Etkisiz
Örnek Kimliği Etkisiz
Bulut Mesajlaşma Google Analytics ile birlikte kullanıldığında Google Analytics, FCM ile ilgili bazı dönüşüm etkinliklerini otomatik olarak günlüğe kaydeder. Bu etkinliklere ilişkin ilişkilendirme, IDFA erişimi gerektirir.
Firebase ML Etkisiz
Performans İzleme Etkisiz
Uzaktan Yapılandırma Remote Config, Google Analytics ile birlikte kullanıldığında, IDFA erişimi olmadan hedefleme için otomatik olarak oluşturulan kullanıcı özelliklerine izin vermez.
Gerçek Zamanlı Veritabanı Etkisiz
Bulut depolama Etkisiz

Etkilenen Firebase entegrasyonları

Aşağıdaki tabloda, IDFA'ya erişilememesi durumunda etkilenen Firebase ile entegre ürünler listelenmektedir.

Ürün IDFA'ya erişilemiyorsa etkisi
Google Analytics Analytics etkinlik günlüğü tutma, etkinlik raporlama ve dönüşüm ölçümü etkilenmez ancak IDFA'ya erişilemediği takdirde ilişkilendirme etkilenir. Google'ın iOS 14'e yanıtı hakkında daha fazla bilgi edinmek için blog yayınımıza bakın.

iOS 14'te Uygulama Takip İzni İsteme

Apple uygulamanızın IDFA'ya erişebilmesini istiyorsanız uygulamanıza Apple'ın Uygulama İzleme Şeffaflığı çerçevesini ekleyebilir ve kullanıcılarınızın IDFA'sını takip etmek veya bunlara erişmek için izin isteyebilirsiniz.

Birçok uygulama, izin istemeden önce bir ısınma veya açıklayıcı ekran sunmayı tercih eder. Açıklayıcı ekran, erişim istemeden önce kullanıcılara uygulamanızın IDFA'yı nasıl kullandığı konusunda daha fazla bağlam sunmanıza olanak tanır.

AdMob veya Ad Manager uygulama yayıncısıysanız, kişiselleştirilmiş reklamların sunulması için izin alınmasının yanı sıra kullanıcıyı Apple'ın yönergelerine göre otomatik olarak takip etme iznini alan Funding Choices'ı kullanmayı düşünün. Daha fazla ayrıntı için Kullanıcı Mesajlarıyla AdMob Onayı sayfasına bakın.

Aşağıdaki kılavuz, Uygulama İzleme Şeffaflığı yoluyla izleme erişimi talep etmeden önce bir açıklayıcı ekran oluşturmak ve görüntülemek için Firebase Uygulama İçi Mesajlaşma'yı kullanan bir çözüm sunmaktadır.

Uygulamanıza Uygulama İçi Mesajlaşma ekleyin

Uygulama İçi Mesajlaşma'yı Apple uygulamanıza eklemek için talimatları izleyin.

Uygulama içi mesajların reddedilmesini yönetin

Öncelikle, iOS 13 çalıştıran cihazlar gibi izin iletişim kutusunu sunamayan cihazlarda açıklayıcı ekranı görüntülemekten kaçının. Bu kodun FirebaseApp.configure() işleminden hemen sonra yürütüldüğünden emin olun.

Süratli

if NSClassFromString("ATTrackingManager") == nil {
  // Avoid showing the App Tracking Transparency explainer if the
  // framework is not linked.
  InAppMessaging.inAppMessaging().messageDisplaySuppressed = true
}

Kullanıcı açıklayıcı ekranını kapattığında meydana gelen olayları yönetmek için InAppMessagingDisplayDelegate protokolünü uygulayın. Kullanıcı Tamam'a dokunursa Uygulama İzleme Şeffaflığı çerçevesi aracılığıyla sistem istemini görüntüleyin.

Süratli

// The InAppMessaging delegate must be assigned before events can be handled.
InAppMessaging.inAppMessaging().delegate = self

func messageClicked(_ inAppMessage: InAppMessagingDisplayMessage,
                    with action: InAppMessagingAction) {
  switch action.actionText {
  case "OK":
    ATTrackingManager.requestTrackingAuthorization { status in
      switch status {
      case .authorized:
        // Optionally, log an event when the user accepts.
        Analytics.logEvent("tracking_authorized", parameters: nil)
      case _:
        // Optionally, log an event here with the rejected value.
      }
    }
  case _:
    // do nothing
  }
}

Uygulama İçi Mesajlaşma kampanyası oluşturma

Kod uygulamanıza yerleştirildikten sonra Firebase konsolunda bir uygulama içi mesaj oluşturun.

  1. Firebase konsolunda yeni bir Uygulama İçi Mesajlaşma kampanyası oluşturun.
  2. Uygulama içi mesajları istediğiniz içerikle doldurun ve mesajı app_launch etkinliğinde tetiklenecek şekilde ayarlayın.
  3. Hedefleme bölümünde, kampanyanın uygulamanızın yalnızca en yeni sürümünü ve daha üstünü hedeflediğinden emin olun.

Uygulama İçi Mesajlaşma belgelerindeki talimatları izleyerek açıklayıcı ekranın görünümünü özelleştirebilirsiniz.

İsteğe bağlı: A/B Testi farklı açıklayıcı ekranlar

Uygulama İçi Mesajlaşma, farklı açıklayıcı ekranlarla denemeler yapmak için kullanabileceğiniz Firebase A/B Testing ile yerleşik bir entegrasyona sahiptir.

Firebase A/B Testi otomatik olarak deneme grupları oluşturur ve kullanıcıların uygulamanızın farklı varyantlarıyla nasıl etkileşimde bulunduğunu görselleştirmenize yardımcı olur.

Uygulama izleme izinlerini kaydedin

Uygulama izleme izinleri yanıtını işlerken bir Google Analytics etkinliğini günlüğe kaydetmediyseniz, bir A/B denemesi çalıştırırken yanıt oranındaki değişiklikleri ölçmek için bunu yapmanız gerekecektir.

Süratli

ATTrackingManager.requestTrackingAuthorization { status in
  switch status {
  case .authorized:
    // Optionally, log an event when the user accepts.
    Analytics.logEvent("tracking_authorized", parameters: nil)
  case _:
    // Optionally, log an event here with the rejected value.
  }
}

Yeni bir dönüşüm etkinliği oluşturun

Firebase konsolunun Analizler bölümünde Dönüşümler menüsüne gidin ve ardından yukarıdaki örnek kodla günlüğe kaydedilen etkinlikle aynı adı taşıyan yeni bir dönüşüm etkinliği ekleyin.

Yeni bir deneme oluştur

Konsolun Uygulama İçi Mesajlaşma menüsünde Yeni Deneme'yi tıklayın ve ardından ortaya çıkan ekranlardaki talimatları izleyin.

  • Hedefleme bölümünde, kampanyanın uygulamanızın yalnızca en yeni sürümünü ve daha üstünü hedeflediğinden emin olun.
  • Hedefler bölümünde, yukarıdaki örnek kodla oluşturduğunuz dönüşüm etkinliğini ve izlemek istediğiniz diğer ölçümleri seçin.

Denemenizi yayınladıktan sonra, kesin sonuçlar üretebilmesi için bir süre veri toplaması gerekecektir.

Bir denemenin nasıl izleneceği ve başarılı bir varyantın nasıl kullanıma sunulacağı hakkında bilgi için Firebase A/B Testi belgelerini okuyun.