Obsługa iOS 14

W przypadku systemu iOS 14.5 firma Apple wymaga od deweloperów uzyskiwania zgody użytkownika w ramach platformy App Tracking Transparency na potrzeby śledzenia tego użytkownika lub uzyskiwania dostępu do identyfikatora reklamowego IDFA. Więcej informacji znajdziesz w dokumentacji ochrony prywatności użytkowników i używania danych firmy Apple i usługi App Tracking Transparency firmy Apple.

Usługi Firebase, których to dotyczy

Pakiety SDK Firebase nie mają dostępu do identyfikatora IDFA, chociaż niektóre mają integrację z Google Analytics, co może wymagać dostępu do identyfikatora IDFA.

Tabela poniżej zawiera listę usług Firebase, które są dostępne na platformach Apple, i opisuje, jak brak dostępu do identyfikatora IDFA wpływa na funkcjonalność poszczególnych usług.

Usługa Konsekwencje braku dostępu do identyfikatora IDFA
Testy A/B Niektóre dane kierowania (np. dane demograficzne) w ramach integracji Testów A/B z Google Analytics pochodzą z identyfikatora IDFA. W aplikacjach bez dostępu do identyfikatora IDFA to kierowanie jest niedostępne.
Sprawdzanie aplikacji Brak wpływu
Rozpowszechnianie aplikacji Brak wpływu
Uwierzytelnianie Nie wpływa to na dostawców uwierzytelniania i własnych uwierzytelniania, takich jak Logowanie przez Google i uwierzytelnianie przez telefon.
Crashlytics Bez wpływu. Integracja Crashlytics z Google Analytics, która dostarcza dane o awariach w czasie rzeczywistym oraz menu nawigacyjne, nie jest zależna od identyfikatora IDFA.
Linki dynamiczne Nie wpływa to na funkcję otwierania linków. W przypadku używania w połączeniu z Google Analytics atrybucja zdarzeń konwersji polegających na połączeniu jest niedostępna.
Cloud Firestore Brak wpływu
Cloud Functions Brak wpływu
Wysyłanie wiadomości w aplikacji Brak wpływu
Instalacje Firebase Brak wpływu
Identyfikator instancji Brak wpływu
Komunikacja w chmurze Gdy jest używana w połączeniu z Google Analytics, automatycznie rejestruje niektóre zdarzenia konwersji związane z FCM. Atrybucja tych zdarzeń wymaga dostępu do identyfikatora IDFA.
Firebase ML Brak wpływu
Monitorowanie wydajności Brak wpływu
Zdalna konfiguracja W przypadku korzystania z Google Analytics Zdalna konfiguracja nie zezwala na automatycznie tworzone właściwości użytkowników na potrzeby kierowania bez dostępu do identyfikatora IDFA.
Baza danych czasu rzeczywistego Brak wpływu
Cloud Storage Brak wpływu
Vertex AI for Firebase Brak wpływu

Integracje Firebase, których to dotyczy

W tabeli poniżej znajdziesz listę usług zintegrowanych z Firebase, których dotyczy brak dostępu do identyfikatora IDFA.

Usługa Konsekwencje braku dostępu do identyfikatora IDFA
Google Analytics Nie ma to wpływu na rejestrowanie zdarzeń Analytics, raportowanie zdarzeń ani pomiar konwersji, ale brak dostępu do identyfikatora IDFA wpływa na atrybucję. Więcej informacji o reakcji Google na iOS 14 znajdziesz w poście na blogu.

Wysyłanie prośby o uprawnienia do śledzenia aplikacji w systemie iOS 14

Jeśli chcesz, aby Twoja aplikacja Apple miała dostęp do identyfikatora IDFA, możesz dodać do niej platformę App Tracking Transparency firmy Apple i poprosić o pozwolenie na śledzenie i dostęp do identyfikatorów IDFA użytkowników.

Wiele aplikacji przed prośbą o uprawnienia wyświetla ekran z rozgrzewką, czyli wyjaśnieniem. Ekran z wyjaśnieniem pozwala poinformować użytkowników o tym, jak aplikacja korzysta z identyfikatora IDFA, zanim poproszą o dostęp.

Jeśli jesteś wydawcą aplikacji w usługach AdMob lub Ad Manager, możesz skorzystać z usługi Funding Choices, która służy do uzyskiwania zgody na wyświetlanie reklam spersonalizowanych oraz na automatyczne śledzenie użytkownika zgodnie z wytycznymi firmy Apple. Więcej informacji znajdziesz na stronie AdMob „Zgoda z wiadomościami dla użytkowników”.

W tym przewodniku znajdziesz rozwiązania, które wykorzystują Przesyłanie wiadomości w aplikacji Firebase do tworzenia i wyświetlania ekranu z wyjaśnieniem przed wysłaniem prośby o dostęp do śledzenia za pomocą App Tracking Transparency.

Dodaj funkcję wiadomości w aplikacji do swojej aplikacji

Wykonaj instrukcje dodawania funkcji wysyłania wiadomości w aplikacji do aplikacji Apple.

Postępowanie w przypadku odrzucenia wiadomości w aplikacji

Po pierwsze, unikaj wyświetlania ekranu z wyjaśnieniem na urządzeniach, które nie mogą wyświetlać tego okna, np. na urządzeniach z systemem iOS 13. Upewnij się, że ten kod jest uruchamiany natychmiast po FirebaseApp.configure().

Swift

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

Zaimplementuj protokół InAppMessagingDisplayDelegate do obsługi zdarzeń po zamknięciu przez użytkownika ekranu z wyjaśnieniem. Jeśli użytkownik kliknie OK, wyświetl komunikat systemowy za pomocą platformy App Tracking Transparency.

Swift

// 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
  }
}

Tworzenie kampanii wysyłającej wiadomości w aplikacji

Po umieszczeniu kodu w aplikacji utwórz wiadomość w aplikacji za pomocą konsoli Firebase.

  1. W konsoli Firebase utwórz nową kampanię z wiadomością w aplikacji.
  2. Wpisz w wiadomościach w aplikacji odpowiednie treści i skonfiguruj wiadomość tak, aby uruchamiała się po wystąpieniu zdarzenia app_launch.
  3. W sekcji Kierowanie upewnij się, że kampania jest kierowana tylko na najnowszą wersję aplikacji i jej nowsze wersje.

Wygląd ekranu z wyjaśnieniem możesz dostosować, postępując zgodnie z instrukcjami w dokumentacji funkcji wysyłania wiadomości w aplikacji.

Opcjonalnie: przeprowadzaj testy A/B różnych ekranów z wyjaśnieniem.

Funkcja wysyłania wiadomości w aplikacji ma wbudowaną integrację z Testami A/B Firebase, za pomocą której można eksperymentować z różnymi ekranami z wyjaśnieniem.

Testy A/B Firebase automatycznie tworzą grupy eksperymentów i ułatwiają wizualizację sposobu interakcji użytkowników z różnymi wariantami aplikacji.

Rejestruj uprawnienia do śledzenia aplikacji

Jeśli podczas obsługi odpowiedzi z uprawnieniami do śledzenia aplikacji nie zostało zarejestrowane żadne zdarzenie Google Analytics, trzeba to zrobić, aby zmierzyć zmiany we współczynniku odpowiedzi w trakcie eksperymentu A/B.

Swift

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.
  }
}

Utwórz nowe zdarzenie konwersji

W sekcji Analytics w konsoli Firebase przejdź do menu Konwersje i dodaj nowe zdarzenie konwersji o tej samej nazwie co zdarzenie zarejestrowane za pomocą podanego powyżej przykładowego kodu.

Utwórz nowy eksperyment

W menu wysyłania wiadomości w aplikacji w konsoli kliknij Nowy eksperyment i postępuj zgodnie z instrukcjami wyświetlanymi na ekranach.

  • W sekcji Kierowanie upewnij się, że kampania jest kierowana tylko na najnowszą wersję aplikacji i jej nowsze wersje.
  • W sekcji Cele wybierz zdarzenie konwersji utworzone za pomocą przykładowego kodu powyżej, a także inne dane, które chcesz śledzić.

Po opublikowaniu eksperymentu musi on przez jakiś czas gromadzić dane, zanim uzyska jednoznaczne wyniki.

Więcej informacji o monitorowaniu eksperymentu i wdrażaniu wariantu znajdziesz w dokumentacji Testów A/B Firebase.