เตรียมพร้อมสําหรับข้อกําหนดในการเปิดเผยข้อมูลใน App Store ของ Apple

Apple กำหนดให้นักพัฒนาแอปที่เผยแพร่แอปใน App Store ต้องเปิดเผยข้อมูลบางอย่างเกี่ยวกับการใช้ข้อมูลแอป

เอกสารนี้ประกอบด้วยลักษณะการทำงานของไลบรารีแพลตฟอร์ม Firebase ของ Apple ที่อาจต้องมีการเปิดเผยข้อมูลตามหลักเกณฑ์ของ Apple เมื่อติดตั้ง Firebase โปรดสังเกตเป้าหมายบิลด์ที่ติดตั้งในแอปโดยผู้จัดการทรัพยากร Dependency ที่คุณเลือก สําหรับเป้าหมายแต่ละรายการที่ผู้จัดการทรัพยากร Dependency ระบุไว้ ให้ดูส่วนที่เกี่ยวข้องของเอกสารนี้เพื่อพิจารณาว่าต้องเปิดเผยการรวบรวมข้อมูลใด จำนวนเป้าหมายบิลด์ของ Firebase ที่คุณติดตั้งอาจมากกว่าที่คาดไว้ เนื่องจากเป้าหมายบิลด์ของ Firebase บางรายการมีการขึ้นต่อกันชั่วคราวกับรายการอื่นๆ

หากคุณใช้ฟีเจอร์เสริมของผลิตภัณฑ์ที่เกี่ยวข้องกับข้อมูลเพิ่มเติมหรือเข้าร่วมการทดสอบฟีเจอร์ใหม่ของผลิตภัณฑ์ที่มีข้อมูลเพิ่มเติม ให้ตรวจสอบว่าฟีเจอร์หรือการทดสอบเหล่านั้นจำเป็นต้องเปิดเผยข้อมูลเพิ่มเติมหรือไม่

เราขอแนะนำให้ใช้ Firebase SDK แต่ละรายการเป็นเวอร์ชันล่าสุดเสมอเพื่อให้แน่ใจว่าการเปิดเผยของแอปมีความถูกต้อง

User Agent ของ Firebase

User Agent ของ Firebase เป็นชุดข้อมูลที่รวบรวมจาก Firebase SDK ส่วนใหญ่ รวมถึงข้อมูลอุปกรณ์, ระบบปฏิบัติการ, รหัส App Bundle และแพลตฟอร์มนักพัฒนาแอป User Agent จะไม่ลิงก์กับตัวระบุผู้ใช้หรือตัวระบุอุปกรณ์ แต่ทีม Firebase จะนำไปใช้กำหนดแพลตฟอร์มและเวอร์ชันที่ใช้เป็นข้อมูลในการตัดสินใจเกี่ยวกับฟีเจอร์ของ Firebase ได้ดีขึ้น

FirebaseCore

  • ไม่รวบรวมข้อมูล

GoogleUtilities

  • ไม่รวบรวมข้อมูล แต่รวมยูทิลิตีเครือข่ายที่ SDK อื่นๆ อาจใช้เพื่อรวบรวมข้อมูล

GoogleDataTransport

รวมถึงยูทิลิตีเครือข่ายที่ SDK อื่นๆ อาจใช้เพื่อรวบรวมข้อมูล

รวบรวมเสมอ

  • รวบรวมข้อมูลเมตาเกี่ยวกับประสิทธิภาพของ SDK เช่น ขนาดของแคชเหตุการณ์ในบันทึกไคลเอ็นต์และจำนวนเหตุการณ์ในบันทึกของไคลเอ็นต์ที่ลดลงด้วยเหตุผลต่างๆ เพื่อตรวจสอบและรักษาคุณภาพของผลิตภัณฑ์

FirebaseABTesting

การทดสอบ A/B จะไม่รวบรวมข้อมูล

Firebase A/B Testing SDK ตั้งค่าและใช้พร็อพเพอร์ตี้ผู้ใช้ Google Analytics เพื่อระบุการเป็นสมาชิกในกลุ่มทดสอบสำหรับการกำหนดค่าระยะไกลของ Firebase และการรับส่งข้อความในแอปของ Firebase

Google Analytics

ดูข้อมูลการเก็บรวบรวมข้อมูลของ Google Analytics ได้ในบทความสนับสนุนนี้

FirebaseAppCheck

เก็บรวบรวมโดยค่าเริ่มต้น

ขึ้นอยู่กับการใช้งาน

  • หากติดตั้งผู้ให้บริการ DeviceCheck ไว้ ให้รวบรวมโทเค็น DCDevice จาก DeviceCheck
  • หากติดตั้งผู้ให้บริการ App Attest แล้ว ให้รวบรวมทั้งออบเจ็กต์เอกสารรับรองและออบเจ็กต์การยืนยันจาก App Attest

FirebaseAppDistribution

App Distribution SDK มีไว้สำหรับการใช้งานการทดสอบเบต้าเท่านั้น อย่าใส่ App Distribution SDK ในแอปพลิเคชันเมื่อส่งไปยัง App Store

FirebaseAuthentication

รวบรวมเสมอ

  • สร้างและจัดเก็บตัวระบุเพื่อวัตถุประสงค์ในการตรวจสอบสิทธิ์ผู้ใช้

เก็บรวบรวมโดยค่าเริ่มต้น

ขึ้นอยู่กับการใช้งาน

  • รวบรวมชื่อที่แสดง หากนักพัฒนาซอฟต์แวร์ระบุชื่อที่แสดงสำหรับผู้ใช้
  • รวบรวมอีเมลของผู้ใช้ตามที่นักพัฒนาซอฟต์แวร์ให้ไว้ เมื่อใช้การตรวจสอบสิทธิ์ของรหัสผ่านอีเมลหรือลิงก์อีเมล หรือตามที่มีอยู่ในคำตอบจากผู้ให้บริการแบบรวมศูนย์หากนักพัฒนาใช้ข้อมูลประจำตัวแบบรวมศูนย์
  • รวบรวมหมายเลขโทรศัพท์ของผู้ใช้ตามที่นักพัฒนาแอประบุไว้เมื่อใช้การตรวจสอบสิทธิ์ทางโทรศัพท์ หรือเมื่อมีการเพิ่มหมายเลขโทรศัพท์ของผู้ใช้เป็นวิธีการตรวจสอบสิทธิ์ และยังเก็บรวบรวมระหว่างขั้นตอนการตรวจสอบสิทธิ์แบบ SMS เป็นวินาที
  • รวบรวมข้อมูลติดต่อที่เกี่ยวข้องกับผู้ให้บริการตรวจสอบสิทธิ์บุคคลที่สาม หากนักพัฒนาซอฟต์แวร์ใช้ผู้ให้บริการตรวจสอบสิทธิ์บุคคลที่สามที่มี Firebase Authentication เช่น ตัวระบุของผู้ใช้อาจลิงก์กับโปรไฟล์ Facebook ของผู้ใช้หากนักพัฒนาซอฟต์แวร์ใช้การตรวจสอบสิทธิ์ Facebook โดยขึ้นอยู่กับขอบเขตที่ให้ไว้ โปรดดูข้อมูลเพิ่มเติมในเอกสารของผู้ให้บริการตรวจสอบสิทธิ์
  • จัดเก็บรหัสเกมเซ็นเตอร์ของผู้ใช้หากแอปลิงก์กับ Game Center แล้ว
  • รวบรวมโทเค็นนี้หากแอปของคุณใช้ reCAPTCHA Enterprise เพื่อปกป้องขั้นตอนการตรวจสอบสิทธิ์ ดูรายละเอียดความเป็นส่วนตัวของ Apple สำหรับ reCAPTCHA Enterprise เพิ่มเติม

FirebaseCrashlytics

รวบรวมเสมอ

  • รวบรวมสแต็กเทรซและสถานะแอปพลิเคชันที่เกี่ยวข้องเมื่อแอปพลิเคชันขัดข้อง
  • รวบรวมข้อมูลอุปกรณ์และระบบปฏิบัติการเพื่อช่วยแก้ไขข้อบกพร่องข้อขัดข้อง

ขึ้นอยู่กับการใช้งาน

  • รวบรวมคีย์ที่กำหนดเอง บันทึก และรหัสผู้ใช้ข้อความอิสระที่นักพัฒนาซอฟต์แวร์แนบกับรายงานข้อขัดข้อง นอกจากนี้ยังรวบรวมเหตุการณ์ที่ไม่ร้ายแรงที่นักพัฒนาแอปกำหนดซึ่งมีสแต็กเทรซที่กำหนดเอง
  • รวบรวมบันทึก "เบรดครัมบ์" หากใช้ Crashlytics ร่วมกับ Google Analytics บันทึกเหล่านี้จะระบุการดำเนินการของผู้ใช้ก่อนเกิดข้อขัดข้อง พร้อมกับจำนวนข้อขัดข้อง
  • รวบรวมส่วนที่นักพัฒนาแอปกำหนดของเทมเพลตการกำหนดค่าระยะไกลและข้อมูลเมตาของเทมเพลต หากมี SDK การกำหนดค่าระยะไกลของ Firebase รวมอยู่ในแอปด้วย ข้อมูลนี้รวมถึง เวอร์ชันเทมเพลตการกำหนดค่าระยะไกล รหัสตัวแปรการเปิดตัว คีย์พารามิเตอร์ และค่าพารามิเตอร์ที่ได้รับผลกระทบจากการเปิดตัวที่ทำงานอยู่

FirebaseDatabase

เก็บรวบรวมโดยค่าเริ่มต้น

  • รวบรวมข้อมูลอุปกรณ์ชั่วคราว ซึ่งรวมถึงมิติข้อมูลหน้าจอ ภาษา เวอร์ชันระบบปฏิบัติการ รหัสชุด ที่อยู่ IP และเวอร์ชัน Firebase SDK ของอุปกรณ์สำหรับ Deferred-Deep Link (Deep Link หลังจากติดตั้งแอป)
  • รวบรวม URL ของลิงก์แบบไดนามิกไว้ชั่วคราวในเพย์บอร์ดของอุปกรณ์ (หากมี) เมื่อเปิดแอปครั้งแรก นักพัฒนาซอฟต์แวร์สามารถปิดใช้ Pasteboard ได้โดยตั้งค่าพร็อพเพอร์ตี้ FirebaseDeepLinkPasteboardRetrievalEnabled เป็น NO ในไฟล์ Info.plist ของแอป

หากใช้ลิงก์แบบไดนามิกร่วมกับ Google Analytics

  • บันทึกเหตุการณ์การโต้ตอบลิงก์โดยอัตโนมัติผ่าน Google Analytics หากต้องการปิดใช้การบันทึกเหตุการณ์อัตโนมัติ ให้นํา FirebaseAnalytics ออกจากแอป

FirebaseFirestore

เก็บรวบรวมโดยค่าเริ่มต้น

FirebaseFunctions

รวบรวมเสมอ

  • รวบรวมข้อมูลเมตาของการเรียกใช้ฟังก์ชัน ซึ่งรวมถึงชื่อฟังก์ชันและที่อยู่ IP ของการเรียกใช้ฟังก์ชัน

FirebaseInAppMessaging

รวบรวมเสมอ

  • บันทึกการโต้ตอบกับข้อความในแอป การโต้ตอบเหล่านี้ (การแสดงผล การคลิก การปิด) จะได้รับการบันทึกไว้ผ่าน Google Analytics นอกจากนี้ Firebase ยังบันทึกการโต้ตอบด้วยเพื่อช่วยนักพัฒนาซอฟต์แวร์ประเมินประสิทธิภาพของแคมเปญการรับส่งข้อความ

FirebaseInstallations

เก็บรวบรวมโดยค่าเริ่มต้น

FirebaseMessaging

รวบรวมเสมอ

  • บันทึกโทเค็น APN และเชื่อมโยงกับรหัสการติดตั้งแอปที่รวบรวมมาซึ่งทำหน้าที่เป็นโทเค็นการลงทะเบียน Firebase Cloud Messaging (FCM)
  • รวบรวมข้อมูลรุ่นอุปกรณ์ ภาษา เขตเวลา เวอร์ชันระบบปฏิบัติการ ตัวระบุแอปพลิเคชัน และเวอร์ชันของแอปพลิเคชันสำหรับการสมัครใช้บริการหัวข้อและการยกเลิกการสมัคร

เก็บรวบรวมโดยค่าเริ่มต้น

ขึ้นอยู่กับการใช้งาน

หากใช้ Cloud Messaging ร่วมกับ Google Analytics

  • บันทึกการโต้ตอบกับการแจ้งเตือนผ่าน Google Analytics โดยอัตโนมัติ หากต้องการปิดใช้ลักษณะการทำงานนี้ ให้นำ FirebaseAnalytics ออกจากแอป

FirebaseMLModelDownloader

รวบรวมเสมอ

  • รวบรวมข้อมูลเมตาการดาวน์โหลดโมเดล ML เช่น เหตุการณ์การดาวน์โหลด เหตุการณ์การลบ และข้อผิดพลาด

FirebasePerformance

รวบรวมเสมอ

  • รวบรวมที่อยู่ IP เพื่อการแบ่งกลุ่มข้อมูลประสิทธิภาพตามภูมิศาสตร์
  • รวบรวมเมตริกประสิทธิภาพของแอป เช่น เวลาเปิดแอปและเวลาในการตอบสนองของคำขอเครือข่าย ตลอดจนการติดตามที่กำหนดเองที่นักพัฒนาแอประบุไว้เพื่อวัดประสิทธิภาพแอป
  • รวบรวมการใช้ CPU/หน่วยความจำของแอปพลิเคชันเพื่อแสดงมุมมองไทม์ไลน์ของประสิทธิภาพของแอป
  • รวบรวมข้อมูลอุปกรณ์ ข้อมูลระบบปฏิบัติการ และข้อมูลแอปพลิเคชันเพื่อกรองข้อมูลประสิทธิภาพเทียบกับกลุ่มอุปกรณ์ต่างๆ

FirebaseRemoteConfig

รวบรวมเสมอ

  • รวบรวมรหัสประเทศ, รหัสภาษา, เขตเวลา, เวอร์ชันระบบปฏิบัติการ, รหัสแอป Apple ของ Firebase และรหัสชุดของอุปกรณ์เพื่อกำหนดเป้าหมายพารามิเตอร์ที่อิงตามข้อมูลนี้ นอกจากนี้จะมีการรวบรวมและรวบรวมเวอร์ชันของระบบปฏิบัติการและเวอร์ชันของ SDK เพื่อทำความเข้าใจแนวโน้มการใช้งานและให้ข้อมูลเกี่ยวกับทิศทางของผลิตภัณฑ์

เก็บรวบรวมโดยค่าเริ่มต้น

ขึ้นอยู่กับการใช้งาน

หากใช้การกำหนดค่าระยะไกลร่วมกับ Google Analytics:

  • รวบรวมพร็อพเพอร์ตี้ผู้ใช้ที่ Firebase SDK สำหรับ Google Analytics ได้รับเพื่อกำหนดเป้าหมายพารามิเตอร์ที่ขึ้นอยู่กับเงื่อนไขพร็อพเพอร์ตี้ผู้ใช้
  • รวบรวมการประทับเวลาเหตุการณ์ first_open ที่ได้รับจาก Firebase SDK สำหรับ Google Analytics เพื่อกำหนดเป้าหมายพารามิเตอร์ที่อิงตามเวลาที่เปิดครั้งแรก

หากใช้การปรับเปลี่ยนการกำหนดค่าระยะไกลตามโปรไฟล์ของผู้ใช้ ให้ทำดังนี้

  • ข้อมูลที่ได้รับจาก Firebase Remote Config SDK และเหตุการณ์ที่ได้รับจาก Firebase SDK สำหรับ Google Analytics จะนำไปใช้ในการสร้างโมเดลการคาดการณ์และวัดประสิทธิภาพของโมเดลเหล่านั้นได้

FirebaseSessions

รวบรวมเสมอ

  • รวบรวมข้อมูลเมตาเกี่ยวกับประสิทธิภาพของแอป เช่น รหัสชุด, ข้อมูลระบบปฏิบัติการ, เวอร์ชัน SDK และประเภทการเชื่อมต่อเครือข่ายเพื่อตรวจสอบคุณภาพแอป
  • รวบรวมข้อมูลการใช้งาน เช่น เวลาที่แอปทำงานอยู่เบื้องหลังเพื่อจัดกลุ่มเมตริกประสิทธิภาพเป็นเซสชันผู้ใช้เพื่อกรองการใช้งานตามเซสชัน

FirebaseStorage

เก็บรวบรวมโดยค่าเริ่มต้น