Twój kod wygląda dobrze. W takich przypadkach stwierdzam, że najbardziej prawdopodobną przyczyną jest to, że twoje pełne sesje nie są wysyłane na serwery Flurry. Być może otrzymujesz raport z sesji początkowej, ale sesja jest zamykana na końcu cyklu życia aplikacji i tylko w tym momencie zdarzenia są wysyłane na serwer.
Musisz upewnić się, że onStartSession
i onEndSession
są wywoływane przy każdym działaniu. Jeśli zostaną one pominięte przy jakiejkolwiek aktywności (szczególnie w przypadku onEndSession), twoja sesja może się nie zamknąć, a zdarzenia mogą nie zostać wysłane.
Zdarzenia wysyłane są pod koniec sesji, gdy wszystkie czynności zostały zatrzymane. Musisz upewnić się, że w pełni zakończysz aplikację na swoim urządzeniu testowym, zanim będziesz oczekiwał, że jakiekolwiek zdarzenia pojawią się na serwerze. Jeśli tego nie zrobiłeś, dane o wydarzeniach mogą nadal znajdować się na urządzeniu, ale nie zostały wysłane.
Zestaw SDK Flurry dostarcza również dzienniki, które mogą pomóc w zawężeniu problemu. Możesz włączyć rejestrowanie za pomocą FlurryAgent.setLogEnabled(true)
i FlurryAgent.setLogLevel(Log.DEBUG)
.
Jeśli masz więcej pytań, skontaktuj się z nami pod adresem [email protected]
Zastrzeżenie: Pracuję z gradem :)
Miałem ten sam problem na Flurry_3.2.2 i mam go teraz z Flurry_3.3.0 (ta wersja rejestruje zdarzenia czasami, ale nie zawsze, w większości przypadków traci zdarzenia). W naszym projekcie Flurry_3.2.1 i Flurry_3.2.0 działają tylko dobrze. – kinORnirvana
Znalazłem także 3.3.1, aby nie rejestrować zdarzeń i zamiast tego musiał użyć 3.2.1. – Ryan