ใช้ Play Age Signals API (เบต้า)

การใช้ Play Age Signals API (เบต้า) หมายความว่าคุณยอมรับข้อกำหนดในการให้บริการ และตกลงที่จะปฏิบัติตามนโยบายนักพัฒนาแอปของ Google Play ทั้งหมด หากต้องการขอสถานะและช่วงอายุของผู้ใช้ ให้เรียกใช้ API จากแอปของคุณในขณะรันไทม์ API สัญญาณอายุใน Play จะแสดงข้อมูลสำหรับผู้ใช้ที่อยู่ในภูมิภาคที่กฎหมายกำหนดให้ Play ต้องระบุข้อมูลหมวดหมู่อายุเท่านั้น

Play จะแสดงช่วงอายุตามช่วงอายุที่กำหนดโดยเขตอำนาจศาลและภูมิภาคที่เกี่ยวข้อง อายุเริ่มต้นที่ API แสดงในเขตอำนาจศาลและภูมิภาคที่เกี่ยวข้องคือ 0-12, 13-15, 16-17 และ 18 ปีขึ้นไป แต่อายุเหล่านี้อาจเปลี่ยนแปลงได้ตามข้อกำหนดระดับภูมิภาค

ผสานรวม Play Age Signals API เข้ากับแอป

หากต้องการผสานรวม Play Age Signals API เข้ากับแอป ให้เพิ่มทรัพยากร Dependency ต่อไปนี้ลงในไฟล์ build.gradle ของแอป

implementation 'com.google.android.play:age-signals:0.0.1-beta02'

ขอสัญญาณอายุ

ต่อไปนี้เป็นตัวอย่างการส่งคำขอสัญญาณอายุ

// Create an instance of a manager
AgeSignalsManager ageSignalsManager =
    AgeSignalsManagerFactory.create(ApplicationProvider.getApplicationContext());

// Request an age signals check
ageSignalsManager
    .checkAgeSignals(AgeSignalsRequest.builder().build())
    .addOnSuccessListener(
        ageSignalsResult -> {
          // Store the install ID for later...
          String installId = ageSignalsResult.installId();

          if (ageSignalsResult
              .userStatus()
              .equals(AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_DENIED)) {
            // Disallow access ...
          } else {
            // Do something else if the user is SUPERVISED, VERIFIED, etc.
          }
        });

Google Play จะจัดเก็บสัญญาณอายุในอุปกรณ์สำหรับผู้ใช้แต่ละราย เมื่อผู้ใช้ที่มีบัญชี Google ที่มีการควบคุมดูแลเข้าสู่อายุช่วงใหม่ Google Play จะอัปเดตสัญญาณอายุที่แคชไว้สำหรับผู้ใช้รายนั้นโดยอัตโนมัติภายใน 2-8 สัปดาห์หลังจากวันเกิดของผู้ใช้

(ไม่บังคับ) รับช่วงอายุที่กำหนดเอง

ช่วงอายุเริ่มต้นที่ API แสดงในเขตอำนาจศาลและ ภูมิภาคที่เกี่ยวข้องคือ 0-12, 13-15, 16-17 และ 18 ปีขึ้นไป ซึ่งอาจมีการเปลี่ยนแปลงในอนาคตตาม ข้อกำหนดในท้องถิ่น

หรือหากต้องการปรับแต่งช่วงอายุตามอายุขั้นต่ำของแอป คุณสามารถระบุอายุขั้นต่ำเหล่านี้สำหรับแอปในหน้าสัญญาณอายุใน Google Play Console Age Signals API จะแสดงช่วงอายุที่ปรับแต่งแล้ว เช่น หากคุณระบุอายุขั้นต่ำเป็น 9, 15 และ 17 ปี ผู้ใช้อายุ 14 ปี จะอยู่ในช่วงอายุ 10-15 ปี อายุขั้นต่ำต้องห่างกันอย่างน้อย 2 ปี และเปลี่ยนได้ปีละ 1 ครั้ง

หากต้องการปรับแต่งช่วงอายุที่ Age Signals API แสดง คุณสามารถระบุอายุขั้นต่ำสำหรับแอปได้ดังนี้

  1. ไปที่หน้าสัญญาณอายุใน Play Console
  2. ในแท็บอายุขั้นต่ำของแอป ให้ป้อนอายุขั้นต่ำสูงสุด 3 รายการสำหรับแอป
  3. คลิกบันทึก

การตอบกลับสัญญาณอายุ

การตอบกลับของ Play Age Signals API (เบต้า) จะมีช่องและค่าต่อไปนี้ ค่าเหล่านี้อาจมีการเปลี่ยนแปลง หากต้องการค่าล่าสุด ให้ขอการตอบกลับจาก API เมื่อแอปเปิดขึ้น คุณมีหน้าที่รับผิดชอบในการมอบประสบการณ์การใช้งานที่เหมาะสมกับวัยโดยใช้สัญญาณเหล่านี้

ฟิลด์การตอบกลับ ค่า คำอธิบาย
userStatus ยืนยันแล้ว ผู้ใช้มีอายุมากกว่า 18 ปี Google ยืนยันอายุของผู้ใช้โดยใช้วิธีการที่สมเหตุสมผลในเชิงพาณิชย์ เช่น บัตรประจำตัวที่ออกโดยหน่วยงานราชการ บัตรเครดิต หรือการคาดคะเนอายุจากใบหน้า
มีการควบคุมดูแล ผู้ใช้มีบัญชี Google ที่มีการควบคุมดูแลซึ่งจัดการโดยผู้ปกครองที่กำหนดอายุของผู้ใช้ ใช้ ageLower และ ageUpper เพื่อกำหนดช่วงอายุของผู้ใช้
SUPERVISED_APPROVAL_PENDING ผู้ใช้มีบัญชี Google ที่มีการควบคุมดูแล และผู้ปกครองที่ควบคุมดูแลยังไม่อนุมัติการเปลี่ยนแปลงที่สำคัญที่รอดำเนินการอย่างน้อย 1 รายการ ใช้ ageLower และ ageUpper เพื่อกำหนดช่วงอายุของผู้ใช้ ใช้ mostRecentApprovalDate เพื่อพิจารณาการเปลี่ยนแปลงที่สำคัญครั้งล่าสุดที่ได้รับอนุมัติ
SUPERVISED_APPROVAL_DENIED ผู้ใช้มีบัญชี Google ภายใต้การควบคุมดูแล และผู้ปกครองที่ควบคุมดูแลปฏิเสธการอนุมัติการเปลี่ยนแปลงที่สำคัญอย่างน้อย 1 รายการ ใช้ ageLower และ ageUpper เพื่อกำหนดช่วงอายุของผู้ใช้ ใช้ mostRecentApprovalDate เพื่อพิจารณาการเปลี่ยนแปลงที่สำคัญครั้งล่าสุดที่ได้รับอนุมัติ
ไม่ทราบ ผู้ใช้ไม่ได้รับการยืนยันหรืออยู่ภายใต้การควบคุมดูแลในเขตอำนาจศาลและภูมิภาคที่เกี่ยวข้อง ผู้ใช้เหล่านี้อาจมีอายุมากกว่าหรือน้อยกว่า 18 ปี หากต้องการรับสัญญาณอายุจาก Google Play ให้ขอให้ผู้ใช้ไปที่ Play Store เพื่อแก้ไขสถานะ
ว่าง (ค่าว่าง) ผู้ใช้รายอื่นๆ ทั้งหมดจะแสดงค่านี้
ageLower 0 ถึง 18 ขอบเขตล่าง (รวม) ของช่วงอายุของผู้ใช้ภายใต้การควบคุมดูแล ใช้ ageLower และ ageUpper เพื่อกำหนดช่วงอายุของผู้ใช้
ว่าง (ค่าว่าง)
userStatus ไม่รู้จักหรือว่างเปล่า
ageUpper 2-18 ปี ขอบเขตบน (รวม) ของช่วงอายุของผู้ใช้ภายใต้การควบคุมดูแล ใช้ ageLower และ ageUpper เพื่อกำหนดช่วงอายุของผู้ใช้
ว่าง (ค่าว่าง) ไม่ว่า userStatus จะได้รับการควบคุมดูแลและผู้ปกครองของผู้ใช้รับรองว่าผู้ใช้มีอายุมากกว่า 18 ปี หรือuserStatusได้รับการยืนยัน ไม่รู้จัก หรือว่างเปล่า
mostRecentApprovalDate การประทับวันที่ effective from วันที่ของการเปลี่ยนแปลงที่สำคัญล่าสุดซึ่งได้รับอนุมัติ เมื่อติดตั้งแอป ระบบจะใช้วันที่ของการเปลี่ยนแปลงที่สำคัญล่าสุดก่อนการติดตั้ง
ว่าง (ค่าว่าง) userStatus ได้รับการกำกับดูแลและไม่มีการส่งการเปลี่ยนแปลงที่สำคัญ หรือ userStatus ได้รับการยืนยัน ไม่รู้จัก หรือว่างเปล่า
installID รหัสตัวอักษรและตัวเลขที่ Play สร้างขึ้น รหัสที่ Google Play มอบหมายให้แก่การติดตั้งของผู้ใช้ภายใต้การควบคุม ซึ่งใช้เพื่อวัตถุประสงค์ในการแจ้งเตือนการเพิกถอนการอนุมัติแอป โปรดอ่านเอกสารประกอบสำหรับการอนุมัติแอปที่ถูกเพิกถอน
ว่าง (ค่าว่าง) userStatus ได้รับการยืนยัน ไม่รู้จัก หรือว่างเปล่า

คำตอบตัวอย่าง

สำหรับผู้ใช้ที่ได้รับการยืนยัน คุณจะได้รับสิ่งต่อไปนี้

  • userStatus จะเป็น AgeSignalsVerificationStatus.VERIFIED
  • ช่องคำตอบอื่นๆ จะว่างเปล่า

สำหรับผู้ใช้ภายใต้การควบคุมดูแล คุณจะได้รับสิ่งต่อไปนี้

  • userStatus จะเป็น AgeSignalsVerificationStatus.SUPERVISED
  • ageLower จะเป็นตัวเลข (เช่น 13)
  • ageUpper จะเป็นตัวเลข (เช่น 15)
  • mostRecentApprovalDate จะเป็นออบเจ็กต์วันที่ของ Java (เช่น 2026-01-01) หรือ ว่าง (หากไม่มีการเปลี่ยนแปลงที่สำคัญที่ได้รับอนุมัติ)
  • installID จะเป็นรหัสตัวอักษรและตัวเลขคละกันที่ Play สร้างขึ้น (เช่น 550e8400-e29b-41d4-a716-446655441111)

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

  • userStatus จะเป็น AgeSignalsVerificationStatus.SUPERVISED_APPROVAL_PENDING
  • ageLower จะเป็นตัวเลข (เช่น 13)
  • ageUpper จะเป็นตัวเลข (เช่น 15)
  • mostRecentApprovalDate จะเป็นออบเจ็กต์วันที่ของ Java (เช่น 2026-01-01) หรือ ว่าง (หากไม่มีการเปลี่ยนแปลงที่สำคัญที่ได้รับอนุมัติ)
  • installID จะเป็นรหัสตัวอักษรและตัวเลขคละกันที่ Play สร้างขึ้น (เช่น 550e8400-e29b-41d4-a716-446655441111)

จัดการรหัสข้อผิดพลาดของ API

หากแอปของคุณส่งคำขอ Play Age Signals API (เบต้า) และการเรียกใช้ไม่สำเร็จ แอปจะได้รับรหัสข้อผิดพลาด ข้อผิดพลาดเหล่านี้อาจเกิดขึ้นได้จากหลายสาเหตุ เช่น แอป Play Store เป็นเวอร์ชันเก่า

กลยุทธ์การลองใหม่

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

ค่าตัวเลขของรหัสข้อผิดพลาด รหัสข้อผิดพลาด คำอธิบาย ลองใหม่ได้
-1 API_NOT_AVAILABLE Play Age Signals API ไม่พร้อมใช้งาน แอป Play Store เวอร์ชันที่ติดตั้งในอุปกรณ์อาจเป็นเวอร์ชันเก่า

วิธีแก้ไขที่เป็นไปได้
  • ขอให้ผู้ใช้อัปเดต Play Store
ใช่
-2 PLAY_STORE_NOT_FOUND ไม่พบแอป Play Store ในอุปกรณ์ ขอให้ผู้ใช้ติดตั้งหรือเปิดใช้ Play Store ใช่
-3 NETWORK_ERROR ไม่พบเครือข่ายที่พร้อมใช้งาน ขอให้ผู้ใช้ตรวจสอบการเชื่อมต่อ ใช่
-4 PLAY_SERVICES_NOT_FOUND บริการ Google Play ไม่พร้อมใช้งานหรือเวอร์ชันเก่าเกินไป ขอให้ผู้ใช้ติดตั้ง อัปเดต หรือเปิดใช้บริการ Google Play ใช่
-5 CANNOT_BIND_TO_SERVICE การเชื่อมโยงกับบริการใน Play Store ไม่สำเร็จ ปัญหานี้อาจเกิดจากการติดตั้ง Play Store เวอร์ชันเก่าในอุปกรณ์หรือหน่วยความจำของอุปกรณ์ทำงานหนักเกินไป ขอให้ผู้ใช้อัปเดตแอป Play Store ลองอีกครั้งโดยใช้ Exponential Backoff ใช่
-6 PLAY_STORE_VERSION_OUTDATED ต้องอัปเดตแอป Play Store ขอให้ผู้ใช้อัปเดตแอป Play Store ใช่
-7 PLAY_SERVICES_VERSION_OUTDATED ต้องอัปเดตบริการ Google Play ขอให้ผู้ใช้อัปเดตบริการ Play ใช่
-8 CLIENT_TRANSIENT_ERROR เกิดข้อผิดพลาดชั่วคราวในอุปกรณ์ไคลเอ็นต์ ใช้กลยุทธ์การลองใหม่โดยมีจำนวนครั้งสูงสุดเป็นเงื่อนไขการออก หากยังแก้ปัญหาไม่ได้ ให้ขอให้ผู้ใช้ลองอีกครั้งในภายหลัง ใช่
-9 APP_NOT_OWNED Google Play ไม่ได้ติดตั้งแอป ขอให้ผู้ใช้ดาวน์โหลดแอปของคุณจาก Google Play ไม่
-100 INTERNAL_ERROR ข้อผิดพลาดภายในที่ไม่รู้จัก ใช้กลยุทธ์การลองใหม่โดยมีจำนวนครั้งสูงสุดเป็นเงื่อนไขการออก หากยังแก้ปัญหาไม่ได้ ให้ขอให้ผู้ใช้ลองอีกครั้งในภายหลัง หากการทดสอบล้มเหลวอย่างต่อเนื่อง โปรดติดต่อทีมสนับสนุนนักพัฒนาแอป Google Play โดยระบุ Play Age Signals API ในหัวเรื่อง และระบุรายละเอียดทางเทคนิคให้ได้มากที่สุด (เช่น รายงานข้อบกพร่อง) ไม่