App Center Analytics (Android)

App Center Analytics vám pomůže pochopit chování uživatelů a zákaznickou zapojení, aby vylepšili vaši aplikaci. Sada SDK automaticky zachycuje počet relací a vlastnosti zařízení, jako je model, verze operačního systému atd. Můžete definovat vlastní události pro měření věcí, které vás zajímají. Všechny zachycené informace jsou k dispozici na portálu App Center, abyste mohli data analyzovat.

Pokud jste ještě nevytvořili sadu SDK v aplikaci, postupujte podle části Začínáme s SDK .

Informace o relaci a zařízení

Po přidání App Center analýzy do aplikace a spuštění sady SDK budou automaticky sledovány relace a vlastnosti zařízení, jako je verze operačního systému, model atd. bez psaní dalšího kódu.

Kód země

Sada SDK automaticky oznámí kód země uživatele, pokud má zařízení nainstalovaný mobilní datový modem a SIM kartu. Zařízení jen pro Wi-Fi ve výchozím nastavení nehlásí kód země. Chcete-li nastavit kód země pro tyto uživatele, musíte načíst své umístění uživatele sami a použít setCountryCode: metodu v sadě SDK:

AppCenter.setCountryCode("en");
AppCenter.setCountryCode("en")

Poznámka

Pro kód země, který se má zobrazit v relacích analýz, AppCenter.setCountryCode se musí volat před voláním AppCenter.start .

Vlastní události

Můžete sledovat své vlastní události s až 20 vlastnostmi , abyste porozuměli interakci mezi uživateli a aplikací.

Po spuštění sady SDK použijte trackEvent() metodu ke sledování událostí s vlastnostmi. Můžete poslat až 200 jedinečných názvů událostí. K dispozici jsou také maximální limity znaků:

  • 256 znaků na event name .
  • 125 znaků na event property name&event property value .
Map<String, String> properties = new HashMap<>();
properties.put("Category", "Music");
properties.put("FileName", "favorite.avi");

Analytics.trackEvent("Video clicked", properties);
val properties = hashMapOf("Category" to "Music", "FileName" to "favorite.avi")
Analytics.trackEvent("Video clicked", properties)

Vlastnosti pro události jsou zcela volitelné – Pokud chcete pouze sledovat událost, použijte tuto ukázku:

Analytics.trackEvent("Video clicked");
Analytics.trackEvent("Video clicked")

Priorita události a trvalost

Můžete sledovat kritické události podniku, které mají vyšší důležitost než jiné události.

  • Vývojáři můžou nastavit prioritu událostí jako normální ( Flags.NORMAL v rozhraní API) nebo kritická ( Flags.CRITICAL v rozhraní API).
  • Události s prioritou nastavenou jako kritické budou načteny z úložiště jako první a budou odeslány před normálními událostmi.
  • Když je místní úložiště plné a je potřeba ukládat nové události, nejdřív se odstraní nejstarší události s nejnižší prioritou.
  • Pokud je úložiště plné z protokolů s kritickou prioritou, pak sledování události s normální prioritou selže, protože sada SDK nemůže v tomto případě vytvořit prostor.
  • Pokud používáte také službu havárií, protokoly chyb jsou nastaveny jako kritické a sdílejí stejné úložiště jako události.
  • Interval přenosu se aplikuje jenom na běžné události, kritické události se budou posílat po 3 sekundách.

Pomocí následujícího rozhraní API můžete sledovat událost jako kritickou:

Map<String, String> properties = new HashMap<>();
properties.put("Category", "Music");
properties.put("FileName", "favorite.avi");

Analytics.trackEvent("eventName", properties, Flags.CRITICAL);

// If you're using name only, you can pass null as properties.
val properties = hashMapOf("Category" to "Music", "FileName" to "favorite.avi")
Analytics.trackEvent("Video clicked", properties, Flags.CRITICAL)

// If you're using name only, you can pass null as properties.

Pozastavení a obnovení odesílání protokolů

Pozastavení přenosu událostí může být užitečné ve scénářích, kdy aplikace potřebuje řídit šířku pásma sítě, aby bylo možné lépe využívat důležité obchodní požadavky. Odesílání protokolů můžete pozastavit do App Center back-endu. Když pozastavíte, můžou se události dál sledovat a ukládat, ale neodesílají se hned. Všechny události, které vaše aplikace sleduje během pozastaveného, budou odeslány až po volání resume .

Analytics.pause();
Analytics.resume();
Analytics.pause()
Analytics.resume()

Povolení nebo zakázání analýzy App Center za běhu

App Center Analytics můžete povolit a zakázat za běhu. Pokud ho zakážete, SDK nebude shromažďovat žádné další analytické informace pro aplikaci.

Analytics.setEnabled(false);
Analytics.setEnabled(false)

Pokud chcete App Center Analytics znovu povolit, použijte stejné rozhraní API, ale předejte true ho jako parametr.

Analytics.setEnabled(true);
Analytics.setEnabled(true)

Stav je uložený v úložišti zařízení napříč aplikací.

Toto rozhraní API je asynchronní. Další informace o tomto tématu najdete v naší App Center příručce k rozhraním API pro asynchronní prostředí.

Poznámka

Tato metoda musí být použita pouze po Analytics spuštění.

Zkontroluje, jestli je povolená App Center Analytics.

Můžete také zjistit, jestli je App Center Analytics povolená nebo ne.

Analytics.isEnabled();
Analytics.isEnabled()

Toto rozhraní API je asynchronní. Další informace o tomto tématu najdete v naší App Center příručce k rozhraním API pro asynchronní prostředí.

Poznámka

Tuto metodu je možné použít pouze po Analytics spuštění, která bude vždy vrácena false před spuštěním.

Spravovat počáteční relaci

Ve výchozím nastavení závisí ID relace na životní cyklus aplikace. Chcete-li řídit začátek nové relace ručně, postupujte podle následujících kroků:

Poznámka

Věnujte pozornost tomu, že každé volání rozhraní API Analytics. StartSession () vygeneruje novou relaci. Pokud v režimu sledování ručních relací toto rozhraní API nebude zavoláno, budou mít všechny odesílající protokoly hodnotu nulové relace.

Poznámka

Věnujte pozornost, že po spuštění nové aplikace se ID relace znovu vygeneruje.

  • Před zahájením sady SDK volejte následující metodu:
Analytics.enableManualSessionTracker();
Analytics.enableManualSessionTracker()
  • Pak můžete rozhraní API použít startSession po AppCenter.start :
Analytics.startSession();
Analytics.startSession()

Velikost místního úložiště

Sada SDK ve výchozím nastavení ukládá všechny protokoly událostí až do velikosti 10 MB. Vývojáři můžou použít rozhraní API ke zvýšení velikosti úložiště a sada SDK bude uchovávat protokoly, dokud není úložiště plné.

Bez přístupu k Internetu

Pokud není k dispozici připojení k síti, sada SDK uloží až 10 MB protokolů v místním úložišti. Po zaplnění úložiště začne sada SDK zahození starých protokolů, aby uvolnila prostor pro nové protokoly. Jakmile se připojení k síti vrátí, SDK pošle protokoly v dávce 50 nebo po každých 6 sekundách (ve výchozím nastavení).

Poznámka

Back-end neakceptuje protokoly starší než 25 dnů.

Dávkové zpracování protokolů událostí

Sada App Center SDK nahrává protokoly v dávce 50 a pokud sada SDK neobsahuje 50 protokolů k odeslání, bude i nadále odesílat protokoly po 6 sekundách (ve výchozím nastavení). Současně lze odeslat maximálně tři dávky. Interval přenosu se dá změnit:

// Change transmission interval to 10 seconds.
Analytics.setTransmissionInterval(10000);
// Change transmission interval to 10 seconds.
Analytics.setTransmissionInterval(10000)

Hodnota interval přenosů musí být v rozmezí 6 sekund až 86400 sekund (jeden den) a tato metoda musí být volána před spuštěním služby.

Logika opakování a zpětného vypínání

Sada App Center SDK podporuje back-vypnuté opakované pokusy o obnovitelné chyby sítě. Níže je logika opakování:

  • 3 počet pokusů za požadavek.
  • Každý požadavek má svůj vlastní počítač stavu opakování.
  • Všechny kanály přenosu jsou zakázané (až do příštího procesu aplikace), až jedna žádost vyčerpá všechny své opakované pokusy.

Zpětná logika

  • 50% randomizace, první opakování mezi 5 a 10 sekundami, příští pokus mezi 2,5 a 5 minutami, poslední pokus je mezi 10 a 20 minutami.
  • Pokud síťové přepínače z Vypnuto na Zapnuto (nebo z Wi-Fi až po mobilní zařízení), obnoví se stav opakování a žádosti se okamžitě zopakují.