Google Analytics ติดตามการเปลี่ยนหน้าจอและแนบข้อมูลเกี่ยวกับหน้าจอปัจจุบันกับเหตุการณ์ ทำให้คุณสามารถติดตามเมตริกต่างๆ เช่น การมีส่วนร่วมของผู้ใช้หรือพฤติกรรมของผู้ใช้ต่อหน้าจอ การรวบรวมข้อมูลส่วนใหญ่นี้เกิดขึ้นโดยอัตโนมัติ แต่คุณสามารถบันทึกการดูหน้าจอด้วยตนเองได้เช่นกัน การติดตามหน้าจอด้วยตนเองจะมีประโยชน์หากแอปของคุณไม่ได้ใช้ UIViewController
, View
หรือ Activity
แยกต่างหากสำหรับแต่ละหน้าจอที่คุณอาจต้องการติดตาม เช่น ในเกม
ติดตามหน้าจอโดยอัตโนมัติ
Analytics ติดตามข้อมูลบางอย่างโดยอัตโนมัติเกี่ยวกับหน้าจอในแอปพลิเคชันของคุณ เช่น ชื่อคลาสของ UIViewController
หรือ Activity
ที่กำลังโฟกัสอยู่ เมื่อเกิดการเปลี่ยนหน้าจอ Analytics จะบันทึกเหตุการณ์ screen_view
ที่ระบุหน้าจอใหม่ เหตุการณ์ที่เกิดขึ้นบนหน้าจอเหล่านี้จะถูกแท็กโดยอัตโนมัติด้วยพารามิเตอร์ firebase_screen_class
(เช่น menuViewController
หรือ MenuActivity
) และ firebase_screen_id
ที่สร้างขึ้น หากแอปของคุณใช้ UIViewController
หรือ Activity
ที่แตกต่างกันสำหรับแต่ละหน้าจอ Analytics จะสามารถติดตามการเปลี่ยนหน้าจอทุกครั้งโดยอัตโนมัติ และสร้างรายงานการมีส่วนร่วมของผู้ใช้แยกตามหน้าจอ หากแอปของคุณไม่มี คุณยังสามารถรับรายงานเหล่านี้ได้โดยการบันทึกเหตุการณ์ screen_view
ด้วยตนเอง
ปิดการติดตามการดูหน้าจอ
คุณสามารถปิดการรายงานการดูหน้าจออัตโนมัติบน iOS ได้โดยตั้งค่า FirebaseAutomaticScreenReportingEnabled
เป็น NO
(Boolean) ใน Info.plist
และบน Android ให้ตั้งค่าต่อไปนี้ภายในแท็ก <application>
ของไฟล์ AndroidManifest.xml
:
<meta-data android:name="google_analytics_automatic_screen_reporting_enabled" android:value="false" />
ติดตามหน้าจอด้วยตนเอง
คุณสามารถบันทึกเหตุการณ์ screen_view
ได้ด้วยตนเอง ไม่ว่าจะเปิดใช้งานการติดตามอัตโนมัติหรือไม่ก็ตาม คุณสามารถบันทึกเหตุการณ์เหล่านี้ในเมธอด onAppear
หรือ viewDidAppear
สำหรับแพลตฟอร์ม Apple และ onResume
สำหรับ Android เมื่อไม่ได้ตั้ง screen_class
Analytics จะตั้งค่าเริ่มต้นตาม UIViewController หรือกิจกรรมที่อยู่ในโฟกัสเมื่อทำการเรียก
หากคุณปิดใช้งานการหมุนวนในแอพของคุณ ชื่อหน้าจอทั้งหมดจะต้องตั้งค่าด้วยตนเอง สำหรับผู้ใช้ SwiftUI ให้ใช้ ส่วนขยาย Analytics Swift SDK
สวิฟต์
Analytics.logEvent(AnalyticsEventScreenView, parameters: [AnalyticsParameterScreenName: screenName, AnalyticsParameterScreenClass: screenClass])
วัตถุประสงค์-C
[FIRAnalytics logEventWithName:kFIREventScreenView parameters:@{kFIRParameterScreenClass: screenClass, kFIRParameterScreenName: screenName}];
Kotlin+KTX
firebaseAnalytics.logEvent(FirebaseAnalytics.Event.SCREEN_VIEW) { param(FirebaseAnalytics.Param.SCREEN_NAME, screenName) param(FirebaseAnalytics.Param.SCREEN_CLASS, "MainActivity") }
Java
Bundle bundle = new Bundle(); bundle.putString(FirebaseAnalytics.Param.SCREEN_NAME, screenName); bundle.putString(FirebaseAnalytics.Param.SCREEN_CLASS, "MainActivity"); mFirebaseAnalytics.logEvent(FirebaseAnalytics.Event.SCREEN_VIEW, bundle);
เว็บโมดูลาร์ API
import { getAnalytics, logEvent } from "firebase/analytics"; const analytics = getAnalytics(); logEvent(analytics, 'screen_view', { firebase_screen: screenName, firebase_screen_class: screenClass });
API เนมสเปซของเว็บ
firebase.analytics().logEvent('screen_view', { firebase_screen: screenName, firebase_screen_class: screenClass });
Dart
await FirebaseAnalytics.instance.logEvent(
name: 'screen_view',
parameters: {
'firebase_screen': screenName,
'firebase_screen_class': screenClass,
},
);