Apple กําหนดให้นักพัฒนาแอปที่เผยแพร่แอปใน App Store ต้องเปิดเผยข้อมูลบางอย่างเกี่ยวกับการใช้ข้อมูลแอป
เอกสารนี้มีพฤติกรรมของไลบรารีแพลตฟอร์ม Apple ของ Firebase ซึ่งอาจต้องมีการเปิดเผยข้อมูลตามหลักเกณฑ์ของ Apple เมื่อติดตั้ง Firebase ให้จดเป้าหมายการสร้างที่เครื่องมือจัดการทรัพยากร Dependency ที่คุณเลือกติดตั้งลงในแอป สําหรับเป้าหมายแต่ละรายการที่เครื่องมือจัดการทรัพยากร Dependency Manager แสดง ให้อ่านส่วนที่เกี่ยวข้องของเอกสารนี้เพื่อดูว่าต้องเปิดเผยการเก็บรวบรวมข้อมูลใด จำนวนเป้าหมายการสร้าง Firebase ที่คุณติดตั้งไว้อาจมากกว่าจำนวนที่คุณคาดไว้ เนื่องจากเป้าหมายการสร้าง Firebase บางรายการมีการพึ่งพาเป้าหมายการสร้างอื่นๆ ชั่วคราว
หากคุณใช้ฟีเจอร์เสริม (ไม่บังคับ) ของผลิตภัณฑ์ที่มีข้อมูลเพิ่มเติม หรือเข้าร่วมการทดสอบฟีเจอร์ใหม่ของผลิตภัณฑ์ที่มีข้อมูลเพิ่มเติม โปรดตรวจสอบให้แน่ใจว่าฟีเจอร์หรือการทดสอบเหล่านั้นจำเป็นต้องมีการเปิดเผยข้อมูลเพิ่มเติมหรือไม่
เราขอแนะนําให้ใช้ Firebase SDK แต่ละรายการเป็นเวอร์ชันล่าสุดเสมอเพื่อให้การเปิดเผยของแอปคุณนั้นถูกต้อง
User Agent ของ Firebase
User Agent ของ Firebase คือกลุ่มข้อมูลที่รวบรวมจาก Firebase SDK ส่วนใหญ่ ซึ่งประกอบด้วยอุปกรณ์ ระบบปฏิบัติการ รหัส App Bundle และแพลตฟอร์มของนักพัฒนาแอป ทีม Firebase จะใช้ User Agent เพื่อระบุแพลตฟอร์มและเวอร์ชันที่ใช้เพื่อประกอบการตัดสินใจเกี่ยวกับฟีเจอร์ Firebase ให้ดียิ่งขึ้น โดยจะไม่ลิงก์ User Agent กับตัวระบุผู้ใช้หรืออุปกรณ์
FirebaseCore
- ไม่เก็บรวบรวมข้อมูล
GoogleUtilities
- ไม่เก็บรวบรวมข้อมูล แต่มียูทิลิตีการทํางานของเครือข่ายที่ SDK อื่นๆ อาจใช้เพื่อรวบรวมข้อมูล
GoogleDataTransport
รวมถึงยูทิลิตีการทํางานของเครือข่ายที่ SDK อื่นๆ อาจใช้เพื่อรวบรวมข้อมูล
รวบรวมเสมอ
- รวบรวมข้อมูลเมตาเกี่ยวกับประสิทธิภาพของ SDK เช่น ขนาดแคชเหตุการณ์บันทึกของไคลเอ็นต์ และจํานวนเหตุการณ์บันทึกของไคลเอ็นต์ที่ลดลงด้วยเหตุผลต่างๆ เพื่อตรวจสอบและรักษาคุณภาพของผลิตภัณฑ์
FirebaseABTesting
การทดสอบ A/B จะไม่เก็บรวบรวมข้อมูล
Firebase A/B Testing SDK จะตั้งค่าและใช้พร็อพเพอร์ตี้ผู้ใช้ Google Analytics เพื่อระบุการเป็นสมาชิกในกลุ่มทดสอบสําหรับ Firebase Remote Config และ Firebase In-App Messaging
Google Analytics
ดูข้อมูลการเก็บรวบรวมข้อมูลของ Google Analytics ได้ในบทความสนับสนุนนี้
FirebaseAppCheck
รวบรวมโดยค่าเริ่มต้น
- หากเปิดใช้การเก็บรวบรวมข้อมูล ระบบจะรวบรวมUser Agent ของ Firebase
ขึ้นอยู่กับการใช้งาน
- หากติดตั้งผู้ให้บริการ DeviceCheck แล้ว ให้รวบรวมโทเค็น
DCDevice
จาก DeviceCheck - หากติดตั้งผู้ให้บริการ App Attest แล้ว ให้รวบรวมทั้งออบเจ็กต์การรับรองและออบเจ็กต์การยืนยันจาก App Attest
FirebaseAppDistribution
App Distribution SDK มีไว้สำหรับการใช้งานการทดสอบเบต้าเท่านั้น อย่ารวม App Distribution SDK ไว้ในแอปพลิเคชันเมื่อส่งไปยัง App Store
FirebaseAuthentication
รวบรวมเสมอ
- สร้างและจัดเก็บตัวระบุเพื่อวัตถุประสงค์ในการตรวจสอบสิทธิ์ผู้ใช้
รวบรวมโดยค่าเริ่มต้น
- หากเปิดใช้การเก็บรวบรวมข้อมูล ระบบจะรวบรวมUser Agent ของ Firebase
ขึ้นอยู่กับการใช้งาน
- รวบรวมชื่อที่แสดง หากนักพัฒนาแอประบุชื่อที่แสดงสำหรับผู้ใช้
- รวบรวมอีเมลของผู้ใช้ตามที่นักพัฒนาแอประบุไว้เมื่อใช้การตรวจสอบสิทธิ์ด้วยรหัสผ่านอีเมลหรือลิงก์อีเมล หรือตามที่ระบุไว้ในคำตอบจากผู้ให้บริการที่รวมศูนย์หากนักพัฒนาแอปใช้ข้อมูลประจำตัวที่รวมศูนย์
- รวบรวมหมายเลขโทรศัพท์ของผู้ใช้ตามที่นักพัฒนาซอฟต์แวร์ให้ไว้เมื่อใช้การตรวจสอบสิทธิ์ทางโทรศัพท์ หรือหากมีการเพิ่มหมายเลขโทรศัพท์ของผู้ใช้เป็นวิธีการตรวจสอบสิทธิ์ นอกจากนี้ยังมีการรวบรวมระหว่างขั้นตอนการตรวจสอบสิทธิ์ทาง SMS เป็นปัจจัยที่สองด้วย
- รวบรวมข้อมูลติดต่อที่เกี่ยวข้องกับผู้ให้บริการตรวจสอบสิทธิ์บุคคลที่สามหากนักพัฒนาแอปใช้ผู้ให้บริการตรวจสอบสิทธิ์บุคคลที่สามกับFirebase Authentication เช่น ตัวระบุของผู้ใช้อาจลิงก์กับโปรไฟล์ Facebook หากนักพัฒนาแอปใช้การตรวจสอบสิทธิ์ของ Facebook ทั้งนี้ขึ้นอยู่กับขอบเขตที่ได้รับ โปรดดูข้อมูลเพิ่มเติมในเอกสารประกอบของผู้ให้บริการตรวจสอบสิทธิ์
- จัดเก็บรหัส Game Center ของผู้ใช้หากแอปลิงก์กับ Game Center
- เก็บรวบรวมโทเค็นนี้หากแอปใช้ reCAPTCHA Enterprise เพื่อปกป้องโฟลว์ Authentication ดูรายละเอียดเพิ่มเติมเกี่ยวกับความเป็นส่วนตัวของ reCAPTCHA Enterprise ของ Apple
FirebaseCrashlytics
รวบรวมเสมอ
- รวบรวมสแต็กเทรซและสถานะของแอปพลิเคชันที่เกี่ยวข้องเมื่อแอปพลิเคชันขัดข้อง
- รวบรวมข้อมูลอุปกรณ์และระบบปฏิบัติการเพื่อช่วยแก้ไขข้อขัดข้อง
ขึ้นอยู่กับการใช้งาน
- รวบรวมคีย์ที่กำหนดเอง บันทึก และรหัสผู้ใช้แบบข้อความอิสระที่นักพัฒนาแอปแนบมากับรายงานข้อขัดข้อง และยังรวบรวมเหตุการณ์ที่ไม่ร้ายแรงซึ่งนักพัฒนาแอปกำหนดไว้ด้วยสแต็กเทรซที่กำหนดเอง
- รวบรวมบันทึก "เบรดครัมบ์" หากใช้ Crashlytics ร่วมกับ Google Analytics บันทึกเหล่านี้จะระบุการดําเนินการของผู้ใช้ก่อนเกิดข้อขัดข้องพร้อมกับจํานวนข้อขัดข้อง
- รวบรวมข้อมูลส่วนต่างๆ ของRemote Configเทมเพลตและข้อมูลเมตาของเทมเพลตที่นักพัฒนาแอปกำหนดไว้ หากแอปมีFirebase Remote Config SDK รวมอยู่ด้วย ข้อมูลนี้ประกอบด้วยRemote Configเวอร์ชันของเทมเพลต รหัสตัวแปรการเปิดตัว คีย์พารามิเตอร์ และค่าพารามิเตอร์ที่ได้รับผลกระทบจากการเปิดตัวที่ใช้งานอยู่
FirebaseDatabase
รวบรวมโดยค่าเริ่มต้น
- หากเปิดใช้การเก็บรวบรวมข้อมูล ระบบจะรวบรวมUser Agent ของ Firebase
FirebaseDynamicLinks
รวบรวมเสมอ
- รวบรวมข้อมูลอุปกรณ์ชั่วคราว ซึ่งรวมถึงขนาดหน้าจอของอุปกรณ์ ภาษา เวอร์ชันระบบปฏิบัติการ รหัสกลุ่ม ที่อยู่ IP และเวอร์ชัน Firebase SDK สําหรับ Deep Link ที่เลื่อนเวลาไว้ (Deep Link หลังการติดตั้งแอป)
รวบรวมโดยค่าเริ่มต้น
- รวบรวม URL ของลิงก์แบบไดนามิกในเพสบอร์ดของอุปกรณ์ชั่วคราว (หากมี) เมื่อเปิดแอปครั้งแรก นักพัฒนาแอปสามารถปิดใช้การวาง clipboard ได้ด้วยการกําหนดพร็อพเพอร์ตี้
FirebaseDeepLinkPasteboardRetrievalEnabled
เป็นNO
ในไฟล์Info.plist
ของแอป
ขึ้นอยู่กับการใช้งาน
หากใช้ Dynamic Links ร่วมกับ Google Analytics ให้ทำดังนี้
- บันทึกเหตุการณ์การโต้ตอบกับลิงก์โดยอัตโนมัติผ่าน Google Analytics หากต้องการปิดใช้การบันทึกเหตุการณ์อัตโนมัติ ให้นำ
FirebaseAnalytics
ออกจากแอป
FirebaseFirestore
รวบรวมโดยค่าเริ่มต้น
- หากเปิดใช้การเก็บรวบรวมข้อมูล ระบบจะรวบรวมUser Agent ของ Firebase
FirebaseFunctions
รวบรวมเสมอ
- รวบรวมข้อมูลเมตาการเรียกใช้ฟังก์ชัน ซึ่งรวมถึงชื่อฟังก์ชันและที่อยู่ IP ของผู้เรียกใช้ฟังก์ชัน
FirebaseInAppMessaging
รวบรวมเสมอ
- บันทึกการโต้ตอบกับข้อความในแอป ระบบจะบันทึกการโต้ตอบเหล่านี้ (การแสดงผล การคลิก การปิด) ผ่าน Google Analytics นอกจากนี้ Firebase ยังบันทึกการโต้ตอบเพื่อช่วยนักพัฒนาแอปประเมินประสิทธิภาพของแคมเปญการรับส่งข้อความด้วย
FirebaseInstallations
รวบรวมโดยค่าเริ่มต้น
- หากเปิดใช้การรวบรวมข้อมูล ให้รวบรวม User Agent ของ Firebase
FirebaseMessaging
รวบรวมเสมอ
- บันทึกโทเค็น APNs และเชื่อมโยงกับรหัสการติดตั้งแอปที่รวบรวมไว้ซึ่งทำหน้าที่เป็นโทเค็นการลงทะเบียน Firebase Cloud Messaging (FCM)
- รวบรวมข้อมูลรุ่นอุปกรณ์ ภาษา เขตเวลา เวอร์ชันระบบปฏิบัติการ ตัวระบุแอปพลิเคชัน และเวอร์ชันแอปพลิเคชันสำหรับการสมัครรับข้อมูลและการยกเลิกการสมัครรับข้อมูลหัวข้อ
รวบรวมโดยค่าเริ่มต้น
- หากเปิดใช้การเก็บรวบรวมข้อมูล ระบบจะรวบรวมUser Agent ของ Firebase
ขึ้นอยู่กับการใช้งาน
หากใช้ Cloud Messaging ร่วมกับ Google Analytics ให้ทำดังนี้
- บันทึกการโต้ตอบการแจ้งเตือนผ่าน Google Analytics โดยอัตโนมัติ หากต้องการปิดใช้ลักษณะการทํางานนี้ ให้นํา
FirebaseAnalytics
ออกจากแอป
FirebaseMLModelDownloader
รวบรวมเสมอ
- รวบรวมข้อมูลเมตาการดาวน์โหลดโมเดล ML เช่น เหตุการณ์การดาวน์โหลด เหตุการณ์การลบ และข้อผิดพลาด
FirebasePerformance
รวบรวมเสมอ
- รวบรวมที่อยู่ IP เพื่อแบ่งกลุ่มข้อมูลประสิทธิภาพตามภูมิศาสตร์
- รวบรวมเมตริกประสิทธิภาพของแอป เช่น เวลาเปิดแอปและเวลาในการตอบสนองของคําขอเครือข่าย รวมถึงการติดตามที่กําหนดเองซึ่งนักพัฒนาแอประบุเพื่อวัดประสิทธิภาพของแอป
- รวบรวมการใช้งาน CPU/หน่วยความจําของแอปพลิเคชันเพื่อแสดงมุมมองไทม์ไลน์ของประสิทธิภาพของแอป
- รวบรวมข้อมูลอุปกรณ์ ข้อมูลระบบปฏิบัติการ ข้อมูลแอปพลิเคชันเพื่อกรองข้อมูลประสิทธิภาพตามกลุ่มอุปกรณ์ต่างๆ
FirebaseRemoteConfig
รวบรวมเสมอ
- รวบรวมรหัสประเทศ รหัสภาษา เขตเวลา เวอร์ชันระบบปฏิบัติการ รหัสแอป Firebase Apple และรหัสชุดของอุปกรณ์เพื่อกำหนดพารามิเตอร์เป้าหมายที่อิงตามข้อมูลนี้ นอกจากนี้ ระบบยังรวบรวมและรวบรวมข้อมูลเวอร์ชันระบบปฏิบัติการและเวอร์ชัน SDK เพื่อทําความเข้าใจแนวโน้มการใช้งานและใช้เป็นข้อมูลในการกำหนดทิศทางผลิตภัณฑ์
รวบรวมโดยค่าเริ่มต้น
- หากเปิดใช้การเก็บรวบรวมข้อมูล ระบบจะรวบรวมUser Agent ของ Firebase
ขึ้นอยู่กับการใช้งาน
หากใช้ Remote Config ร่วมกับ Google Analytics ให้ทำดังนี้
- รวบรวมพร็อพเพอร์ตี้ผู้ใช้ที่ได้รับจาก Firebase SDK สําหรับ Google Analytics เพื่อกําหนดเป้าหมายพารามิเตอร์ตามเงื่อนไขพร็อพเพอร์ตี้ผู้ใช้
- รวบรวมการประทับเวลาเหตุการณ์
first_open
ที่ได้รับจาก Firebase SDK สําหรับ Google Analytics เพื่อกําหนดเป้าหมายพารามิเตอร์ตามเวลาเปิดครั้งแรก
หากใช้การปรับ Remote Config ในแบบของคุณ
- ข้อมูลที่ได้รับจาก Firebase Remote Config SDK และเหตุการณ์ที่ได้รับจาก Firebase SDK สําหรับ Google Analytics สามารถใช้ในการสร้างโมเดลการคาดการณ์และวัดประสิทธิภาพของโมเดลเหล่านั้น
FirebaseSessions
รวบรวมเสมอ
- รวบรวมข้อมูลเมตาเกี่ยวกับประสิทธิภาพของแอป เช่น รหัสชุด, ข้อมูล ระบบปฏิบัติการ, เวอร์ชัน SDK และประเภทการเชื่อมต่อเครือข่ายเพื่อตรวจสอบคุณภาพแอป
- รวบรวมข้อมูลการใช้งาน เช่น เวลาที่แอปทำงานอยู่เบื้องหลัง เพื่อจัดกลุ่มเมตริกประสิทธิภาพไว้ในเซสชันของผู้ใช้สำหรับการกรองการใช้งานตามเซสชัน
FirebaseStorage
รวบรวมโดยค่าเริ่มต้น
- หากเปิดใช้การเก็บรวบรวมข้อมูล ระบบจะรวบรวมUser Agent ของ Firebase
FirebaseVertexAI
รวบรวมเสมอ
- รวบรวมเวอร์ชัน Firebase SDK และเวอร์ชันภาษา Swift
- รวบรวมชื่อรุ่นเมื่อเรียกใช้