Firebase is back at Google I/O on May 10! Register now

รองรับ iOS 14

จัดทุกอย่างให้เป็นระเบียบอยู่เสมอด้วยคอลเล็กชัน บันทึกและจัดหมวดหมู่เนื้อหาตามค่ากำหนดของคุณ

ด้วย 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

  1. ใน คอนโซล Firebase ให้สร้างแคมเปญการรับส่งข้อความในแอปใหม่
  2. เติมข้อความในแอปด้วยเนื้อหาที่คุณต้องการ และตั้งค่าข้อความให้ทริกเกอร์ในเหตุการณ์ app_launch
  3. ในส่วน การกำหนดเป้าหมาย ตรวจสอบ ให้แน่ใจว่าแคมเปญกำหนดเป้าหมายเฉพาะแอปเวอร์ชันล่าสุดและสูงกว่า

คุณสามารถปรับแต่งรูปลักษณ์ของหน้าจอตัวอธิบายได้โดยทำตามคำแนะนำใน เอกสาร 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 สำหรับข้อมูลเกี่ยวกับวิธีตรวจสอบการทดสอบและเปิดตัวตัวแปรที่ประสบความสำเร็จ