Apple กําหนดให้นักพัฒนาแอปที่เผยแพร่แอปใน App Store ต้องเปิดเผยข้อมูลบางอย่างเกี่ยวกับการใช้ข้อมูลแอป
เอกสารนี้มีพฤติกรรมของไลบรารีแพลตฟอร์ม Apple ของ Firebase ซึ่งอาจต้องมีการเปิดเผยข้อมูลตามหลักเกณฑ์ของ Apple เมื่อติดตั้ง Firebase ให้จดเป้าหมายการสร้างที่เครื่องมือจัดการทรัพยากร Dependency ที่คุณเลือกติดตั้งไว้ในแอป สําหรับเป้าหมายแต่ละรายการที่เครื่องมือจัดการทรัพยากร Dependency แสดง ให้อ่านส่วนที่เกี่ยวข้องของเอกสารนี้เพื่อดูว่าต้องเปิดเผยการเก็บรวบรวมข้อมูลใด จำนวนเป้าหมายการสร้าง 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 เป็นปัจจัยที่ 2 ด้วย
- รวบรวมข้อมูลติดต่อที่เกี่ยวข้องกับผู้ให้บริการตรวจสอบสิทธิ์บุคคลที่สามหากนักพัฒนาแอปใช้ผู้ให้บริการตรวจสอบสิทธิ์บุคคลที่สามกับFirebase Authentication เช่น ตัวระบุของผู้ใช้อาจลิงก์กับโปรไฟล์ Facebook หากนักพัฒนาแอปใช้การตรวจสอบสิทธิ์ของ Facebook ทั้งนี้ขึ้นอยู่กับขอบเขตที่ได้รับ ดูข้อมูลเพิ่มเติมได้ในเอกสารประกอบของผู้ให้บริการตรวจสอบสิทธิ์
- จัดเก็บรหัส Game Center ของผู้ใช้หากแอปลิงก์กับ Game Center
- เก็บรวบรวมโทเค็นนี้หากแอปใช้ reCAPTCHA Enterprise เพื่อปกป้องโฟลว์ Authentication ดูรายละเอียดเพิ่มเติมเกี่ยวกับความเป็นส่วนตัวของ Apple สำหรับ reCAPTCHA Enterprise
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
- รวบรวมชื่อโมเดลเมื่อเรียกใช้
รวบรวมโดยค่าเริ่มต้น
- หากเปิดใช้การเก็บรวบรวมข้อมูล ระบบจะรวบรวมรหัสแอป Firebase สำหรับ Apple และเวอร์ชันแอปพลิเคชัน