ด้วย iOS 14.5 นั้น Apple กำหนดให้นักพัฒนาต้องได้รับอนุญาตจากผู้ใช้ผ่านเฟรมเวิร์กความโปร่งใสในการติดตามแอปเพื่อติดตามหรือเข้าถึงตัวระบุโฆษณา (IDFA) ของอุปกรณ์ ดู ความเป็นส่วนตัวของผู้ใช้และการใช้ข้อมูลของ Apple และเอกสาร ประกอบความโปร่งใสในการติดตามแอปของ Apple สำหรับรายละเอียดเพิ่มเติม
ผลิตภัณฑ์ Firebase ที่ได้รับผลกระทบ
Firebase SDK ไม่เข้าถึง IDFA แม้ว่าบางส่วนจะมีการผสานรวมกับ Google Analytics ที่อาจเกี่ยวข้องกับการเข้าถึง IDFA
ตารางด้านล่างแสดงรายการผลิตภัณฑ์ Firebase ที่พร้อมใช้งานบนแพลตฟอร์มของ Apple และอธิบายว่าฟังก์ชันการทำงานของแต่ละผลิตภัณฑ์ได้รับผลกระทบอย่างไรหาก IDFA ไม่สามารถเข้าถึงได้
ผลิตภัณฑ์ | ผลกระทบหาก IDFA ไม่สามารถเข้าถึงได้ |
---|---|
การทดสอบ A/B | ข้อมูลการกำหนดเป้าหมายบางอย่าง (เช่น ข้อมูลประชากร) ในการรวมการทดสอบ A/B กับ Google Analytics ได้มาจาก IDFA ในแอปที่ไม่มีสิทธิ์เข้าถึง IDFA การกำหนดเป้าหมายนี้จะไม่สามารถใช้ได้ |
ตรวจสอบแอป | ไม่มีผลกระทบ |
การกระจายแอพ | ไม่มีผลกระทบ |
การรับรองความถูกต้อง | ไม่มีผลกระทบกับการตรวจสอบสิทธิ์และผู้ให้บริการการตรวจสอบสิทธิ์บุคคลที่หนึ่ง เช่น Google Sign-In และ Phone Authentication |
แครชไลติค | ไม่มีผลกระทบ การรวม Crashlytics กับ Google Analytics ที่ให้ข้อมูลข้อขัดข้องแบบเรียลไทม์และเบรดครัมบ์ไม่ได้ขึ้นอยู่กับ IDFA |
ลิงค์แบบไดนามิก | ไม่มีผลกระทบสำหรับฟังก์ชันการเปิดลิงก์ เมื่อใช้กับ Google Analytics การระบุแหล่งที่มาสำหรับเหตุการณ์การแปลงลิงก์จะไม่สามารถใช้ได้ |
Cloud Firestore | ไม่มีผลกระทบ |
ฟังก์ชั่นคลาวด์ | ไม่มีผลกระทบ |
การส่งข้อความในแอป | ไม่มีผลกระทบ |
การติดตั้ง Firebase | ไม่มีผลกระทบ |
รหัสอินสแตนซ์ | ไม่มีผลกระทบ |
การส่งข้อความบนคลาวด์ | เมื่อใช้กับ Google Analytics Google Analytics จะบันทึกเหตุการณ์การแปลงที่เกี่ยวข้องกับ FCM โดยอัตโนมัติ การแสดงที่มาสำหรับเหตุการณ์เหล่านี้จำเป็นต้องเข้าถึง IDFA |
Firebase ML | ไม่มีผลกระทบ |
การตรวจสอบประสิทธิภาพ | ไม่มีผลกระทบ |
การกำหนดค่าระยะไกล | เมื่อใช้กับ Google Analytics การกำหนดค่าระยะไกลจะไม่อนุญาตให้พร็อพเพอร์ตี้ผู้ใช้ที่สร้างขึ้นโดยอัตโนมัติสำหรับการกำหนดเป้าหมายโดยไม่มีการเข้าถึง IDFA |
ฐานข้อมูลเรียลไทม์ | ไม่มีผลกระทบ |
การจัดเก็บเมฆ | ไม่มีผลกระทบ |
การผสานรวม Firebase ที่ได้รับผลกระทบ
ตารางด้านล่างแสดงรายการผลิตภัณฑ์ที่ทำงานร่วมกับ Firebase ซึ่งจะได้รับผลกระทบหาก IDFA ไม่สามารถเข้าถึงได้
ผลิตภัณฑ์ | ผลกระทบหาก IDFA ไม่สามารถเข้าถึงได้ |
---|---|
Google Analytics | การบันทึกเหตุการณ์ของ Analytics การรายงานเหตุการณ์ และการวัด Conversion จะไม่ได้รับผลกระทบ แต่การระบุแหล่งที่มาจะได้รับผลกระทบหาก IDFA ไม่สามารถเข้าถึงได้ หากต้องการเรียนรู้เพิ่มเติมเกี่ยวกับการตอบสนองของ Google ต่อ iOS 14 โปรดดู บล็อกโพสต์ ของเรา |
การขออนุญาตติดตามแอปบน iOS 14
หากคุณต้องการให้แอปพลิเคชัน Apple ของคุณสามารถเข้าถึง IDFA ได้ คุณสามารถเพิ่มเฟรมเวิร์กความโปร่งใสในการติดตามแอปของ Apple ลงในแอปของคุณ และขออนุญาตเพื่อติดตามหรือเข้าถึง IDFA ของผู้ใช้
แอปพลิเคชันจำนวนมากเลือกที่จะแสดงหน้าจออุ่นเครื่องหรืออธิบายก่อนที่จะขออนุญาต หน้าจออธิบายช่วยให้คุณแสดงบริบทเพิ่มเติมแก่ผู้ใช้เกี่ยวกับวิธีที่แอปของคุณใช้ IDFA ก่อนที่จะขอสิทธิ์เข้าถึง
หากคุณเป็นผู้เผยแพร่แอป AdMob หรือ Ad Manager ให้พิจารณาใช้ Funding Choices ซึ่งจะจัดการการขอความยินยอมในการแสดงโฆษณาที่ปรับให้เหมาะกับแต่ละบุคคล ตลอดจนความยินยอมในการติดตามผู้ใช้ตามหลักเกณฑ์ของ Apple โดยอัตโนมัติ ดู หน้าความยินยอมของ AdMob พร้อมข้อความผู้ใช้ สำหรับรายละเอียดเพิ่มเติม
คำแนะนำต่อไปนี้ให้วิธีแก้ปัญหาโดยใช้ Firebase In-App Messaging สำหรับสร้างและแสดงหน้าจออธิบายก่อนที่จะขอการเข้าถึงการติดตามผ่าน App Tracking Transparency
เพิ่ม In-App Messaging ในแอพของคุณ
ทำตามคำแนะนำเพื่อ เพิ่ม In-App Messaging ไปยังแอปพลิเคชัน Apple ของคุณ
จัดการการปิดข้อความในแอป
อันดับแรก หลีกเลี่ยงการแสดงหน้าจออธิบายบนอุปกรณ์ที่ไม่สามารถแสดงกล่องโต้ตอบความยินยอมได้ เช่น อุปกรณ์ที่ใช้ iOS 13 ตรวจสอบให้แน่ใจว่าโค้ดนี้ทำงานทันทีหลังจาก FirebaseApp.configure()
สวิฟต์
if NSClassFromString("ATTrackingManager") == nil {
// Avoid showing the App Tracking Transparency explainer if the
// framework is not linked.
InAppMessaging.inAppMessaging().messageDisplaySuppressed = true
}
ใช้โปรโตคอล InAppMessagingDisplayDelegate
เพื่อจัดการเหตุการณ์เมื่อผู้ใช้ปิดหน้าจอตัวอธิบาย หากผู้ใช้แตะตกลง ให้แสดงพร้อมท์ของระบบผ่านเฟรมเวิร์กความโปร่งใสในการติดตามแอป
สวิฟต์
// The InAppMessaging delegate must be assigned before events can be handled.
InAppMessaging.inAppMessaging().delegate = self
func messageClicked(_ inAppMessage: InAppMessagingDisplayMessage,
with action: InAppMessagingAction) {
switch action.actionText {
case "OK":
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
case _:
// do nothing
}
}
สร้างแคมเปญการส่งข้อความในแอป
เมื่อวางโค้ดในแอปพลิเคชันแล้ว ให้สร้างข้อความในแอปในคอนโซล Firebase
- ใน คอนโซล Firebase ให้สร้างแคมเปญการรับส่งข้อความในแอปใหม่
- เติมข้อความในแอปด้วยเนื้อหาที่คุณต้องการ และตั้งค่าข้อความให้ทริกเกอร์ในเหตุการณ์
app_launch
- ในส่วน การกำหนดเป้าหมาย ตรวจสอบ ให้แน่ใจว่าแคมเปญกำหนดเป้าหมายเฉพาะแอปเวอร์ชันล่าสุดและสูงกว่า
คุณสามารถปรับแต่งรูปลักษณ์ของหน้าจอตัวอธิบายได้โดยทำตามคำแนะนำใน เอกสาร In-App Messaging
ทางเลือก: A/B Test หน้าจอตัวอธิบายที่แตกต่างกัน
การส่งข้อความในแอปมีการผสานรวมในตัวกับ Firebase A/B Testing ซึ่งคุณสามารถใช้เพื่อทดสอบกับหน้าจอตัวอธิบายต่างๆ
การทดสอบ A/B ของ Firebase จะสร้างกลุ่มการทดสอบโดยอัตโนมัติและช่วยให้คุณเห็นภาพว่าผู้ใช้โต้ตอบกับแอปพลิเคชันของคุณในรูปแบบต่างๆ อย่างไร
บันทึกสิทธิ์การติดตามแอป
หากคุณไม่ได้บันทึกเหตุการณ์ Google Analytics เมื่อจัดการการตอบสนองของสิทธิ์การติดตามแอป คุณจะต้องบันทึกการเปลี่ยนแปลงของอัตราการตอบกลับเมื่อเรียกใช้การทดสอบ A/B
สวิฟต์
ATTrackingManager.requestTrackingAuthorization { status in
switch status {
case .authorized:
// Optionally, log an event when the user accepts.
Analytics.logEvent("tracking_authorized", parameters: nil)
case _:
// Optionally, log an event here with the rejected value.
}
}
สร้างเหตุการณ์การแปลงใหม่
ใน ส่วน Analytics ของคอนโซล Firebase ให้ไปที่เมนู Conversion จากนั้นเพิ่มเหตุการณ์ Conversion ใหม่ที่มีชื่อเดียวกับเหตุการณ์ที่บันทึกด้วยโค้ดตัวอย่างด้านบน
สร้างการทดสอบใหม่
ใน เมนู In-App Messaging ของคอนโซล ให้คลิก New Experiment จากนั้นทำตามคำแนะนำบนหน้าจอผลลัพธ์
- ในส่วน การกำหนดเป้าหมาย ตรวจสอบ ให้แน่ใจว่าแคมเปญกำหนดเป้าหมายเฉพาะแอปเวอร์ชันล่าสุดและสูงกว่า
- ในส่วน เป้าหมาย ให้เลือกเหตุการณ์ Conversion ที่คุณสร้างด้วยโค้ดตัวอย่างด้านบน รวมทั้งเมตริกอื่นๆ ที่คุณต้องการติดตาม
เมื่อคุณเผยแพร่การทดสอบของคุณแล้ว การทดสอบจะต้องรวบรวมข้อมูลสักระยะหนึ่งก่อนที่จะสามารถให้ผลลัพธ์ที่สรุปได้
อ่าน เอกสารการทดสอบ A/B ของ Firebase สำหรับข้อมูลเกี่ยวกับวิธีตรวจสอบการทดสอบและเปิดตัวตัวแปรที่ประสบความสำเร็จ