Dyspozycje – pakiet SDK na iOS

W tym dokumencie opisujemy, jak zarządzać wysyłaniem danych do Google Analytics za pomocą pakietu SDK Google Analytics na iOS w wersji 2.

Przegląd

W pakiecie SDK Google Analytics na iOS zebrane dane, takie jak wyświetlenia ekranu czy zdarzenia, są przechowywane lokalnie w kolejce przed wysłaniem na serwery Google Analytics. Proces wysyłania tych danych (nazywanych tutaj „działaniami”) z pakietu SDK do Google Analytics nazywa się wysyłaniem.

Funkcja wysyłania jest dostępna tylko w bibliotekach kolekcji mobilnych i ma na celu łagodzenie problemów związanych z niestabilnym dostępem do sieci i ograniczonym czasem pracy na baterii.

Istnieją 2 rodzaje wysyłki:

  • Wysyłka okresowa – automatycznie wysyła działania w cyklicznym, określonym przez Ciebie przedziale czasu.
  • Wysyłanie ręczne – ręcznie wysyłaj działania, aby wysyłać dane, gdy jest to dogodne dla Ciebie, na przykład gdy masz połączenie HTTP.

W dalszej części tego dokumentu znajdziesz bardziej szczegółowe informacje o poszczególnych typach wysyłania i sposobach ich wdrażania w aplikacji.

Okresowa dostawa

Gdy aplikacja zbiera dane Google Analytics, są one dodawane do kolejki i okresowo wysyłane do Google Analytics. Okresowe wysyłanie aplikacji może odbywać się wtedy, gdy aplikacja działa na pierwszym planie lub w tle.

Domyślny okres wysyłki to 2 minuty. Własny interwał w sekundach możesz określić, wywołując setDispatchPeriod:(NSTimeInterval) jak w tym przykładzie:

[[GAI sharedInstance] setDispatchPeriod:60];

Ustawienie wartości ujemnej spowoduje wyłączenie okresowej wysyłki, co będzie wymagało wysyłki ręcznej, jeśli chcesz wysyłać dane do Google Analytics. Z drugiej strony ustawienie wartości 0 spowoduje, że każde działanie będzie wysyłane natychmiast, jeśli będzie dostępne połączenie sieciowe.

Po wysłaniu wszystkich trafień okresowa komunikacja przechodzi w tryb oszczędzania energii i wyłącza ją do czasu nawiązania kolejnego wywołania.

Jeśli użytkownik utraci dostęp do sieci lub zamknie aplikację, gdy są jeszcze działania oczekujące na wysłanie, te działania zostaną zachowane w pamięci lokalnej. Zostaną one wysłane przy następnym uruchomieniu aplikacji i wywołaniu metody wysyłania.

Wysyłka ręczna

Oprócz polegania na co jakiś czas może się zdarzyć, że zechcesz wysyłać działania ręcznie. Możesz na przykład połączyć swoje dyspozycje z innymi żądaniami HTTP wysyłanymi przez Twoją aplikację, aby zmniejszyć koszty.

Działania można wysyłać ręcznie, wywołując dispatch, jak pokazano poniżej:

[[GAI sharedTracker] dispatch];