สร้างโหมดความยินยอมสําหรับแอป

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

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

ก่อนเริ่มต้น

คุณต้องทำตามขั้นตอนต่อไปนี้ก่อนจึงจะจัดการความยินยอมของผู้ใช้ได้

  • SDK ของ Google Analytics สำหรับ Firebase
  • แบนเนอร์การตั้งค่าความยินยอมเพื่อบันทึกความยินยอมของผู้ใช้

หากต้องการตั้งค่าโหมดความยินยอม คุณต้องทำดังนี้

  1. ตั้งค่าสถานะความยินยอมเริ่มต้น

โดยค่าเริ่มต้น จะไม่มีการกำหนดค่าโหมดความยินยอม วิธีตั้งค่าสถานะความยินยอมเริ่มต้นให้แอป

  1. เปิดไฟล์ info.plist ของแอป
  2. เพิ่มคู่คีย์-ค่าของโหมดความยินยอม คีย์จะอธิบายประเภทความยินยอม และค่าบ่งบอกถึงสถานะความยินยอม ค่าอาจเป็น true หมายความว่าได้รับความยินยอมแล้ว หรือ false หมายความว่าความยินยอมถูกปฏิเสธ ตั้งค่าดังต่อไปนี้

    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_ANALYTICS_STORAGE
    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_STORAGE
    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA
    • GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS
  3. บันทึกการเปลี่ยนแปลง ถัดไป ให้ใช้กลไกการอัปเดตค่าความยินยอม

เช่น หากต้องการตั้งค่าความยินยอมทั้งหมดให้พารามิเตอร์ทั้งหมดโดยค่าเริ่มต้น ให้ทําดังนี้

<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_ANALYTICS_STORAGE</key> <true/>
<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_STORAGE</key> <true/>
<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA</key> <true/>
<key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS</key> <true/>

หากต้องการอัปเดตค่าความยินยอมหลังจากเปิดแอปแล้ว ให้เรียกใช้เมธอด setConsent

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

หากผู้ใช้ถอนความยินยอมที่เคยให้ไว้กับ Analytics หรือพื้นที่เก็บข้อมูลโฆษณา Google Analytics จะลบพร็อพเพอร์ตี้ผู้ใช้ทั้งหมด รวมถึงความยินยอมสําหรับ ad_personalization ด้วย หากต้องการรักษาตัวเลือกความยินยอมของผู้ใช้สำหรับการปรับโฆษณาตามโปรไฟล์ของผู้ใช้ไว้ ให้คืนค่า ค่าก่อนหน้าสำหรับการปรับโฆษณาตามโปรไฟล์ของผู้ใช้โดยใช้ setConsent (Swift | Obj-C)

ตัวอย่างต่อไปนี้แสดงเมธอด setConsent ซึ่งอัปเดตค่าความยินยอมต่างๆ เป็น granted

Swift

Analytics.setConsent([
  .analyticsStorage: .granted,
  .adStorage: .granted,
  .adUserData: .granted,
  .adPersonalization: .granted,
])

Objective-C

[FIRAnalytics setConsent:@{
FIRConsentTypeAnalyticsStorage : FIRConsentStatusGranted,
FIRConsentTypeAdStorage : FIRConsentStatusGranted,
FIRConsentTypeAdUserData : FIRConsentStatusGranted,
FIRConsentTypeAdPersonalization : FIRConsentStatusGranted,
}];

หากผู้ใช้ตัดสินใจเพิกถอนความยินยอม อย่าลืมอัปเดตสถานะความยินยอมให้สอดคล้องกัน

Google มุ่งมั่นที่จะสร้างระบบนิเวศการโฆษณาดิจิทัลที่ไม่ละเมิดความเป็นส่วนตัวอย่างต่อเนื่อง เราจึงเพิ่มความเข้มงวดในการบังคับใช้นโยบายความยินยอมของผู้ใช้ EU

ดูข้อมูลเพิ่มเติมเกี่ยวกับการอัปเดตโหมดความยินยอมของ Google สำหรับการเข้าชมในเขตเศรษฐกิจยุโรป (EEA)

ผู้ใช้โหมดความยินยอมต้องส่งพารามิเตอร์ใหม่ 2 รายการนอกเหนือจากพื้นที่เก็บข้อมูลโฆษณาและพื้นที่เก็บข้อมูลวิเคราะห์ ดังนี้

  1. อัปเดต info.plist ของแอปให้รวมข้อมูลต่อไปนี้

    <key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_USER_DATA</key> <true/>
    <key>GOOGLE_ANALYTICS_DEFAULT_ALLOW_AD_PERSONALIZATION_SIGNALS</key> <true/>
    
  2. อัปเดตการเรียกความยินยอมให้รวมพารามิเตอร์สำหรับข้อมูลผู้ใช้โฆษณาและการปรับโฆษณาตามโปรไฟล์ของผู้ใช้ ดังนี้

    Swift

    Analytics.setConsent([
    .analyticsStorage: .granted,
    .adStorage: .granted,
    .adUserData: .granted,
    .adPersonalization: .granted,
    ])
    

    Objective-C

    [FIRAnalytics setConsent:@{
      FIRConsentTypeAnalyticsStorage : FIRConsentStatusGranted,
      FIRConsentTypeAdStorage : FIRConsentStatusGranted,
      FIRConsentTypeAdUserData : FIRConsentStatusGranted,
      FIRConsentTypeAdPersonalization : FIRConsentStatusGranted,
    }];
    

คุณตรวจสอบได้ว่าการตั้งค่าความยินยอมทํางานตามที่ต้องการโดยดูคอนโซลแก้ไขข้อบกพร่องของ Xcode สําหรับแอป

โปรดทำตามขั้นตอนต่อไปนี้

  1. เปิดใช้การบันทึกแบบละเอียด ในอุปกรณ์
  2. ในคอนโซลดีบักของ Xcode ให้มองหาข้อมูลต่อไปนี้

    • ad_storage
    • analytics_storage
    • ad_user_data
    • ad_personalization

    ตัวอย่างเช่น หากเปิดใช้พื้นที่เก็บข้อมูลของโฆษณา คุณจะเห็นข้อความต่อไปนี้

    ad_storage is granted.