#android #firebase #firebase-analytics
#Android #firebase #firebase-аналитика
Вопрос:
Я последовал за помощником Android Studio, чтобы подключить свое приложение к Firebase Analytics, оно отлично работает в AVD и показывает события в DebugView. Но когда я попытался запустить это приложение на своем телефоне, DebugView не получил никаких событий.
Тестирование других функций Firebase (база данных реального времени, Crashlytics и другие), все работает как в реальном, так и в AVD.
Код, который я использую для активного DebugView:
adb shell setprop debug.firebase.analytics.app <my.app.package>
Код для получения информации из журнала:
adb logcat -v time -s FA FA-SVC
Журнал приложения, запущенного на моем телефоне:
08-21 11:00:07.240 V/FA (15356): onActivityCreated
08-21 11:00:07.353 V/FA (15356): App measurement collection enabled
08-21 11:00:07.363 V/FA (15356): App measurement enabled for app package, google app id: com.papel.myapplication, 1:7809993896:android:1808a14c9e0b159897469d
08-21 11:00:07.365 I/FA (15356): App measurement initialized, version: 31049
08-21 11:00:07.366 I/FA (15356): To enable debug logging run: adb shell setprop log.tag.FA VERBOSE
08-21 11:00:07.366 I/FA (15356): To enable faster debug mode event logging run:
08-21 11:00:07.366 I/FA (15356): adb shell setprop debug.firebase.analytics.app com.papel.myapplication
08-21 11:00:07.366 D/FA (15356): Debug-level message logging enabled
08-21 11:00:07.527 V/FA (15356): Connecting to remote service
08-21 11:00:07.545 V/FA (15356): Detected application was in foreground
08-21 11:00:07.554 V/FA (15356): Session started, time: 607704075
08-21 11:00:07.608 V/FA (15356): Connection attempt already in progress
08-21 11:00:07.619 I/FA (15356): Tag Manager is not found and thus will not be used
08-21 11:00:07.765 V/FA (15356): Connection attempt already in progress
08-21 11:00:07.801 V/FA (15356): Connection attempt already in progress
08-21 11:00:07.827 V/FA (15356): Connection attempt already in progress
08-21 11:00:07.829 V/FA (15356): Activity resumed, time: 607703994
08-21 11:00:07.952 V/FA (15356): Connection attempt already in progress
08-21 11:00:07.956 V/FA (15356): Connection attempt already in progress
08-21 11:00:08.083 D/FA (15356): Connected to remote service
08-21 11:00:08.086 V/FA (15356): Processing queued up service tasks: 7
08-21 11:00:08.203 V/FA-SVC ( 4741): Setting user property: ga_session_number(_sno), 2
08-21 11:00:08.222 V/FA-SVC ( 4741): Setting user property: ga_session_id(_sid), 1598018407
08-21 11:00:08.241 V/FA-SVC ( 4741): Logging event: origin=auto,name=session_start(_s),params=Bundle[{ga_event_origin(_o)=auto, ga_session_id(_sid)=1598018407}]
08-21 11:00:09.004 V/FA-SVC ( 4741): Next upload time is 0
08-21 11:00:09.004 V/FA-SVC ( 4741): Unscheduling upload
08-21 11:00:09.010 V/FA-SVC ( 4741): Background event processing time, ms: 769
08-21 11:00:09.032 V/FA-SVC ( 4741): Logging event: origin=auto,name=screen_view(_vs),params=Bundle[{ga_event_origin(_o)=auto, ga_screen_class(_sc)=MainActivity, ga_screen_id(_si)=7116014326966617553}]
08-21 11:00:09.808 V/FA-SVC ( 4741): Next upload time is 0
08-21 11:00:09.808 V/FA-SVC ( 4741): Unscheduling upload
08-21 11:00:09.810 V/FA-SVC ( 4741): Background event processing time, ms: 779
08-21 11:00:09.826 V/FA-SVC ( 4741): Saving default event parameters, appId, data size: com.papel.myapplication, 2
08-21 11:00:13.371 V/FA-SVC ( 4741): Logging event: origin=app,name=app_open,params=Bundle[{item_name=Splash screen opened, ga_event_origin(_o)=app, ga_screen_class(_sc)=MainActivity, ga_screen_id(_si)=7116014326966617553, item_id=7}]
08-21 11:00:14.163 V/FA-SVC ( 4741): Next upload time is 0
08-21 11:00:14.163 V/FA-SVC ( 4741): Unscheduling upload
08-21 11:00:14.165 V/FA-SVC ( 4741): Background event processing time, ms: 796
Код MainActivity:
class MainActivity : AppCompatActivity() {
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
setContentView(R.layout.activity_main)
val mFirebaseAnalytics = FirebaseAnalytics.getInstance(this)
findViewById<FloatingActionButton>(R.id.fab).setOnClickListener {
val bundle = Bundle()
bundle.putString(FirebaseAnalytics.Param.ITEM_NAME, "Splash screen opened")
mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.APP_OPEN, bundle)
}
}
}
На экране DebugView в разделе «Устройство отладки» отображается только AVD.
Ответ №1:
Ваш код в порядке.
Аналитика начинает показывать события, когда в приложении 10 пользователей. Существует задержка перед отображением событий.
Комментарии:
1. В DebugView всегда отображаются события. Он создан для тестирования событий во время разработки, без временных и пользовательских ограничений. Когда я тестировал этот код в AVD, я получил результаты.