Przygotowanie do wymagań firmy Apple dotyczących ujawniania informacji w App Store

Firma Apple wymaga od deweloperów publikujących aplikacje w App Store ujawniania określonych informacji dotyczących wykorzystywania danych przez ich aplikacje.

Ten dokument zawiera informacje o zachowaniach biblioteki platformy Apple w Firebase, które mogą wymagać ujawnienia zgodnie z wytycznymi Apple. Podczas instalowania Firebase zwróć uwagę na cele kompilacji zainstalowane w aplikacji przez wybranego menedżera zależności. W przypadku każdego elementu docelowego wymienionego przez menedżera zależności zapoznaj się z odpowiednią sekcją tego dokumentu, aby określić, jakie zbieranie danych musisz ujawnić. Liczba zainstalowanych elementów docelowych kompilacji Firebase może być większa niż oczekiwana, ponieważ niektóre z nich mają przejściowe zależności od innych.

Jeśli korzystasz z opcjonalnych funkcji usługi, które korzystają z dodatkowych danych, lub uczestniczysz w testach nowych funkcji usługi, które korzystają z dodatkowych danych, sprawdź, czy te funkcje lub testy wymagają ujawniania dodatkowych informacji.

Aby mieć pewność, że informacje o korzystaniu z danych przez Twoją aplikację są prawidłowe, zalecamy zawsze używanie najnowszej wersji każdego pakietu SDK Firebase.

Klient Firebase

Ciąg tekstowy klienta Firebase to pakiet informacji zbieranych z większości pakietów SDK Firebase. Zawiera on m.in. informacje o urządzeniu, systemie operacyjnym, identyfikatorze pakietu aplikacji i platformie deweloperskiej. Ciąg User-Agent nigdy nie jest powiązany z identyfikatorem użytkownika ani urządzenia. Zespół Firebase używa go do określania popularności platform i wersji, aby podejmować lepsze decyzje dotyczące funkcji Firebase.

FirebaseCore

  • Nie zbiera danych.

GoogleUtilities

  • Nie zbiera danych, ale zawiera narzędzia sieciowe, które mogą być używane przez inne pakiety SDK do zbierania danych.

GoogleDataTransport

Zawiera narzędzia sieciowe, które mogą być używane przez inne pakiety SDK do zbierania danych.

Zbierane zawsze

  • Zbiera metadane dotyczące wydajności pakietu SDK, takie jak rozmiar pamięci podręcznej zdarzeń logu klienta i liczba zdarzeń logu klienta odrzuconych z różnych powodów, aby monitorować i utrzymywać jakość usługi.

FirebaseABTesting

Testy A/B nie zbierają danych.

Pakiet SDK Firebase A/B Testing ustawia i używa Google Analytics właściwości użytkownika, aby określać przynależność do grup eksperymentalnych w przypadku Firebase Remote Config i Firebase In-App Messaging.

FirebaseAILogic

Firebase AI Logic nosiło wcześniej nazwę „Vertex AI in Firebase” i korzystało z biblioteki FirebaseVertexAI. Firebase AI Logic miała wcześniej bibliotekę FirebaseAI.

Zbierane zawsze

  • Zbiera wersję pakietu SDK Firebase i wersję języka Swift.
  • Zbiera nazwę modelu podczas wywołania.

Zbierane domyślnie

  • Jeśli zbieranie danych jest włączone, zbiera identyfikator aplikacji Firebase na iOS i wersję aplikacji.

Zależne od wykorzystania

  • Jeśli monitorowanie wykorzystania AI w konsoli Firebase jest włączone w przypadku Agent Platform Gemini API (formerly Vertex AI), to prompt i wygenerowane dane wyjściowe z każdego próbkowanego żądania są zbierane wraz z danymi o wydajności i użytkowaniu.

Google Analytics

Google Analytics Informacje o zbieraniu danych znajdziesz w tym artykule pomocy.

FirebaseAppCheck

Zbierane domyślnie

Zależne od wykorzystania

  • Jeśli dostawca DeviceCheck jest zainstalowany, pobiera token DCDevice z usługi DeviceCheck.

  • Jeśli dostawca App Attest jest zainstalowany, zbiera zarówno obiekt atestu, jak i obiekt potwierdzenia z App Attest.

  • Jeśli dostawca reCAPTCHA Enterprise jest zainstalowany, zbiera token reCAPTCHA, wywołując pakiet SDK reCAPTCHA Enterprise. reCAPTCHA Enterprise Pakiet SDK z kolei zbiera dane zgodnie z informacjami o ochronie prywatności w Apple.

FirebaseAppDistribution

Pakiet SDK Rozpowszechniania aplikacji jest przeznaczony wyłącznie do testów beta. Nie umieszczaj pakietu SDK Rozpowszechniania aplikacji w aplikacji przesyłanej do App Store.

FirebaseAuthentication

Zbierane zawsze

  • Generuje i przechowuje identyfikatory na potrzeby uwierzytelniania użytkowników.

Zbierane domyślnie

Zależne od wykorzystania

  • Zbiera wyświetlaną nazwę, jeśli deweloper poda wyświetlaną nazwę użytkownika.
  • Zbiera adresy e-mail użytkowników podane przez dewelopera podczas korzystania z uwierzytelniania za pomocą hasła lub linku w e-mailu albo zawarte w odpowiedzi od dostawcy sfederowanego, jeśli deweloper używa tożsamości sfederowanej.
  • Zbiera numery telefonów użytkowników podane przez dewelopera podczas korzystania z uwierzytelniania za pomocą telefonu lub jeśli numer telefonu użytkownika został dodany jako metoda uwierzytelniania. Dane te są też zbierane podczas uwierzytelniania dwuskładnikowego za pomocą SMS-a.
  • Zbiera informacje kontaktowe związane z dostawcami usług uwierzytelniania innych firm, jeśli deweloper korzysta z dostawcy usług uwierzytelniania innej firmy z Firebase Authentication. Na przykład identyfikator użytkownika może być powiązany z jego profilem na Facebooku, jeśli deweloper korzysta z uwierzytelniania za pomocą Facebooka, w zależności od przyznanych zakresów. Więcej informacji znajdziesz w dokumentacji dostawcy uwierzytelniania.
  • Przechowuje identyfikator Game Center użytkownika, jeśli aplikacja jest połączona z Game Center.
  • Ten token jest zbierany, jeśli aplikacja używa reCAPTCHA Enterprise do ochrony przepływów Authentication. Zobacz dodatkowe informacje o prywatności w reCAPTCHA Enterprise w przypadku urządzeń Apple.

FirebaseCrashlytics

Zbierane zawsze

Zależne od wykorzystania

  • Zbiera wszystkie niestandardowe klucze, logi i identyfikatory użytkowników w formie tekstu, które deweloperzy dołączają do raportów o awariach. Zbiera też zdefiniowane przez dewelopera zdarzenia niekrytyczne z niestandardowymi śladami stosu.
  • Zbiera dzienniki „ścieżki”, jeśli Crashlytics jest używany razem z Google Analytics. Te logi identyfikują działania użytkownika bezpośrednio przed awarią oraz liczbę awarii.
  • Gromadzi zdefiniowane przez dewelopera części Remote Configszablonu i metadane szablonu, jeśli w aplikacji jest też uwzględniony pakiet SDK Firebase Remote Config. Te dane obejmują Remote Configwersję szablonu, identyfikator wariantu wdrożenia, klucze parametrów i wartości parametrów, na które mają wpływ aktywne wdrożenia.

FirebaseDatabase

Zbierane domyślnie

FirebaseDataConnect

Zbierane domyślnie

Jeśli zbieranie danych jest włączone:

  • Zbiera ciąg znaków klienta Firebase.
  • Zbiera informacje o tym, czy lokalne generowanie kodu dla SQL Connect jest używane przez sprawdzanie, czy żądania do usługi SQL Connect pochodzą z kodu wygenerowanego przez generator kodu, czy z bezpośredniego użycia pakietu SDK SQL Connect.
  • Zbiera identyfikator aplikacji Firebase (nie jest to identyfikator pakietu aplikacji). Ta wartość jest uwzględniana w nagłówku każdego żądania.
  • Tymczasowo zbiera dane o urządzeniu, w tym wymiary ekranu, język, wersję systemu operacyjnego, identyfikator pakietu, adres IP i wersję pakietu SDK Firebase na potrzeby odroczonych linków do konkretnych treści (linków do konkretnych treści po zainstalowaniu aplikacji).
  • Tymczasowo zbiera adres URL linku dynamicznego w schowku urządzenia (jeśli jest dostępny) przy pierwszym uruchomieniu aplikacji. Deweloperzy mogą wyłączyć używanie schowka, ustawiając właściwość FirebaseDeepLinkPasteboardRetrievalEnabled na NO w pliku Info.plist aplikacji.

Jeśli Dynamic Links jest używane razem z Google Analytics:

  • Automatycznie rejestruje zdarzenia interakcji z linkami za pomocą Google Analytics. Aby wyłączyć automatyczne rejestrowanie zdarzeń, usuń FirebaseAnalytics z aplikacji.

FirebaseFirestore

Zbierane domyślnie

FirebaseFunctions

Zbierane zawsze

  • Zbiera metadane wywołania funkcji, w tym nazwę funkcji i adres IP wywołującego.

FirebaseInAppMessaging

Zbierane zawsze

  • Rejestruje interakcje z wiadomościami w aplikacji. Te interakcje (wyświetlenia, kliknięcia, zamknięcia) są rejestrowane za pomocą Google Analytics. Interakcje są też rejestrowane przez Firebase, aby pomagać deweloperom oceniać skuteczność kampanii z wiadomościami.

FirebaseInstallations

Zbierane domyślnie

FirebaseMessaging

Zbierane zawsze

  • Rejestruje token APNs i łączy go z zebranym identyfikatorem instalacji aplikacji, który działa jako token rejestracji Komunikacji w chmurze Firebase (FCM).
  • Zbiera informacje o modelu urządzenia, języku, strefie czasowej, wersji systemu operacyjnego, identyfikatorze aplikacji i wersji aplikacji na potrzeby subskrypcji i anulowania subskrypcji tematów.

Zbierane domyślnie

Zależne od wykorzystania

Jeśli Cloud Messaging jest używane razem z Google Analytics:

  • Automatycznie rejestruje interakcje z powiadomieniami za pomocą Google Analytics. Aby wyłączyć to działanie, usuń z aplikacji element FirebaseAnalytics.

FirebaseMLModelDownloader (Wycofane)

Zbierane zawsze

  • Zbiera metadane pobierania modeli ML, takie jak zdarzenia pobierania, zdarzenia usuwania i błędy.

FirebasePerformance

Zbierane zawsze

  • Zbiera adresy IP, aby zapewnić segmentację danych o skuteczności na podstawie lokalizacji.
  • Zbiera dane o wydajności aplikacji, takie jak czas uruchamiania aplikacji i czas oczekiwania na żądanie sieciowe, a także niestandardowe ślady określone przez dewelopera, aby mierzyć wydajność aplikacji.
  • Zbiera informacje o wykorzystaniu procesora i wykorzystaniu pamięci przez aplikację, aby przedstawić widok osi czasu skuteczności aplikacji.
  • Zbiera informacje o urządzeniu, systemie operacyjnym i aplikacji, aby filtrować dane o skuteczności według różnych segmentów urządzeń.

FirebaseRemoteConfig

Zbierane zawsze

  • Zbiera kod kraju, kod języka, strefę czasową, wersję systemu operacyjnego, identyfikator aplikacji Firebase na iOS i identyfikator pakietu urządzenia, aby kierować reklamy na podstawie parametrów opartych na tych danych. Zbierane i agregowane są też wersje systemu operacyjnego i pakietu SDK, aby poznać trendy w korzystaniu z usług i określić kierunek rozwoju produktu.

Zbierane domyślnie

Zależne od wykorzystania

Jeśli Remote Config jest używane razem z Google Analytics:

  • Zbiera właściwości użytkownika uzyskane przez pakiet SDK Firebase, abyGoogle Analytics kierować reklamy na parametry oparte na warunkach właściwości użytkownika.
  • Zbiera sygnaturę czasową zdarzenia first_open uzyskaną przez pakiet SDK Firebase dlaGoogle Analytics, aby kierować reklamy na parametry oparte na czasie pierwszego uruchomienia.

Jeśli używana jest personalizacja Remote Config:

  • Dane uzyskane przez Firebase Remote Config SDK i zdarzenia uzyskane przez pakiet SDK Firebase dla Google Analytics można wykorzystać do tworzenia modeli predykcyjnych i mierzenia ich skuteczności.

FirebaseSessions

Zbierane zawsze

  • Zbiera metadane dotyczące wydajności aplikacji, takie jak identyfikator pakietu, informacje o systemie operacyjnym, wersja pakietu SDK i typ połączenia sieciowego, aby monitorować jakość aplikacji.
  • Zbiera dane o użytkowaniu, np. czas, przez jaki aplikacja działała w tle, aby grupować dane o wydajności w sesje użytkowników i filtrować dane o użytkowaniu według sesji.

FirebaseStorage

Zbierane domyślnie