ตั้งค่า

หน้านี้อธิบายวิธีตั้งค่าแอปหรือเกมให้ใช้ Play Integrity API คุณต้องเปิดใช้การตอบกลับจาก API จากนั้นจึงผสานรวม API เข้ากับแอปและเซิร์ฟเวอร์แบ็กเอนด์ของแอป ตัวเลือกการกำหนดค่าเพิ่มเติม ฟีเจอร์การทดสอบ และการรายงานจะพร้อมใช้งานเมื่อคุณลิงก์โปรเจ็กต์ Google Cloud ที่คุณใช้สำหรับ Play Integrity API ใน Google Play Console

เปิดใช้การตอบกลับของ Play Integrity API

แอปหรือ SDK ทุกรายการที่เรียกใช้ Play Integrity API ต้องใช้โปรเจ็กต์ Google Cloud เพื่อตรวจสอบการใช้งาน API แอปใน Google Play สามารถลิงก์โปรเจ็กต์ Cloud ใน Google Play Console เพื่อเปิดใช้การตอบกลับของ Play Integrity API หากต้องการสร้างโปรเจ็กต์ Cloud ใหม่หรือแอปของคุณเผยแพร่ภายนอก Google Play เท่านั้น คุณสามารถเปิดใช้การตอบกลับของ Play Integrity API จาก Google Cloud Console ได้

ตั้งค่าใน Google Play Console (แนะนำ)

การเปิดใช้การตอบกลับของ Play Integrity API ใน Google Play Console จะช่วยให้คุณมีสิทธิ์เข้าถึงตัวเลือกการกำหนดค่าเพิ่มเติม ฟีเจอร์การทดสอบ และการรายงาน API ตัวเลือกนี้ใช้ได้เฉพาะกับแอปที่จัดจำหน่ายใน Google Play เท่านั้น ไปที่ รุ่น > ความสมบูรณ์ของแอป ในส่วน Play Integrity API ให้เลือกลิงก์โปรเจ็กต์ Cloud เลือกโปรเจ็กต์ Cloud ที่ต้องการลิงก์กับแอปของคุณ ซึ่งจะ เปิดใช้การตอบกลับของ Play Integrity API ตอนนี้คุณสามารถผสานรวม Play Integrity API เข้ากับแอปได้แล้ว

ตั้งค่าใน Google Cloud Console

ใน Google Cloud Console ให้สร้างโปรเจ็กต์ Cloud ใหม่หรือเลือกโปรเจ็กต์ Cloud ที่มีอยู่ซึ่งคุณต้องการใช้กับ Play Integrity API ไปที่ API และบริการ เลือกเปิดใช้ API และบริการ ค้นหา Play Integrity API แล้วเปิดใช้ ตอนนี้คุณผสานรวม Play Integrity API เข้ากับแอปได้แล้ว

วิธีการตั้งค่าสำหรับผู้ให้บริการ SDK

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

นักพัฒนา SDK มี 2 ตัวเลือกในการตั้งค่า Play Integrity API ได้แก่ Google Play SDK Console หรือ Google Cloud Console

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

ใช้ Google Cloud Console

คุณเปิดใช้การตอบกลับของ Play Integrity API จาก Google Cloud Console ได้ ในคอนโซล Google Cloud ให้สร้างโปรเจ็กต์ Cloud ใหม่หรือเลือกโปรเจ็กต์ Cloud ที่มีอยู่ ซึ่งคุณต้องการใช้กับ Play Integrity API ไปที่ API และบริการ เลือกเปิดใช้ API และบริการ ค้นหา Play Integrity API แล้วเปิดใช้ ตอนนี้คุณสามารถผสานรวม Play Integrity API เข้ากับ SDK ได้แล้ว

เพิ่มคำขอ Play Integrity API ต่อวันของ SDK

ผู้ให้บริการ SDK ที่ต้องการเพิ่มคำขอสูงสุดต่อวันควรกรอกแบบฟอร์มขอโควต้า ในส่วนความคิดเห็นที่เปิดอยู่ ให้ระบุว่าคุณกำลัง ส่งคำขอ SDK และระบุพิกัด Maven (groupId:artifactId) หรือ URL ของ SDK

ขีดจำกัดการใช้งาน Play Integrity API

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

การทำงาน โควต้ารายวันต่อแอป หมายเหตุ
คำขอโทเค็น 10,000 ใช้ร่วมกันระหว่างคำขอแบบคลาสสิกและการเตรียมโทเค็นมาตรฐาน
การถอดรหัสโทเค็นในเซิร์ฟเวอร์ของ Google 10,000 ใช้ร่วมกันระหว่างคำขอแบบคลาสสิกและคำขอมาตรฐาน

เพิ่มจำนวนคำขอสูงสุดต่อวัน

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

หากต้องการขอเพิ่มจำนวนคำขอสูงสุดต่อวัน ให้ทำดังนี้

  1. ลิงก์โปรเจ็กต์ Google Cloud ที่คุณใช้สำหรับ Play Integrity API ใน Play Console
  2. ตรวจสอบว่าคุณใช้ตรรกะ API อย่างถูกต้องแล้ว ซึ่งรวมถึง กลยุทธ์การลองใหม่ที่แนะนํา
  3. ขอเพิ่มโควต้าโดยใช้แบบฟอร์มนี้

การเพิ่มโควต้า Play Integrity API อาจใช้เวลาถึง 1 สัปดาห์ ดังนั้นเราขอแนะนำให้คุณตรวจสอบการใช้งาน Play Integrity API ใน Google Play Console หรือใน Google Cloud Console ซึ่งคุณสามารถตั้งค่าการแจ้งเตือนโควต้าเพื่อหลีกเลี่ยงการหยุดชะงักของบริการได้ด้วย

ระบบจะเพิ่มโควต้าโดยอัตโนมัติทั้งการเรียกของไคลเอ็นต์เพื่อสร้างโทเค็นความสมบูรณ์และการเรียกของเซิร์ฟเวอร์เพื่อถอดรหัสและยืนยันโทเค็นความสมบูรณ์

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

หากต้องการผสานรวม Play Integrity API เข้ากับแอปหรือ SDK ให้ทำอย่างใดอย่างหนึ่งต่อไปนี้ โดยขึ้นอยู่กับสภาพแวดล้อมการพัฒนาของคุณ

Kotlin หรือ Java

ไลบรารี Android ล่าสุดสำหรับ Play Integrity API พร้อมใช้งานจากที่เก็บ Maven ของ Google เพิ่มการอ้างอิงต่อไปนี้ลงใน ไฟล์ build.gradle ของแอป

implementation 'com.google.android.play:integrity:1.4.0'

Unity

ส่วนต่อไปนี้จะอธิบายวิธีผสานรวมและตั้งค่า Google Play Integrity API สำหรับโปรเจ็กต์ Unity โดยครอบคลุมเวอร์ชัน Unity ที่รองรับ วิธีการติดตั้ง และการตั้งค่าสภาพแวดล้อม

เวอร์ชัน Unity ที่รองรับ

  • รองรับทุกเวอร์ชันตั้งแต่ 2019.x, 2020.x ขึ้นไป
  • หากคุณใช้ Unity 2018.x ระบบจะรองรับเวอร์ชัน 2018.4 ขึ้นไป
  • ไม่รองรับ Unity 2017.x และเวอร์ชันที่เก่ากว่า

ตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์

OpenUPM-CLI

หากติดตั้ง OpenUPM CLI ไว้ คุณจะติดตั้งรีจิสทรี OpenUPM ได้ด้วยคำสั่งต่อไปนี้

openupm add com.google.play.integrity

OpenUPM

  1. เปิดการตั้งค่า Package Manager โดยเลือกตัวเลือกเมนู Unity แก้ไข > การตั้งค่าโปรเจ็กต์ > Package Manager

  2. เพิ่ม OpenUPM เป็นรีจิสทรีที่กำหนดขอบเขตในหน้าต่าง Package Manager โดยทำดังนี้

    Name: package.openupm.com
    URL: https://package.openupm.com
    Scopes: com.google.external-dependency-manager
      com.google.play.common
      com.google.play.core
      com.google.play.integrity
    
  3. เปิดเมนู Package Manager โดยเลือกตัวเลือกเมนู Unity Window > Package Manager

  4. ตั้งค่าเมนูแบบเลื่อนลงของขอบเขตผู้จัดการเพื่อเลือกรีจิสทรีของฉัน

  5. เลือกแพ็กเกจปลั๊กอิน Google Play Integrity สำหรับ Unity จาก รายการแพ็กเกจ แล้วกดติดตั้ง

นำเข้าจาก GitHub

  1. ดาวน์โหลด.unitypackage เวอร์ชันล่าสุดจาก GitHub

  2. นำเข้าไฟล์ .unitypackage โดยเลือกตัวเลือกเมนู Unity ชิ้นงาน > นำเข้าแพ็กเกจ > แพ็กเกจที่กำหนดเอง แล้วนำเข้าทุกรายการ

Unreal Engine

ส่วนต่อไปนี้จะอธิบายวิธีผสานรวมและตั้งค่า Google Play Integrity API สำหรับโปรเจ็กต์ Unreal Engine

เวอร์ชัน Unreal Engine ที่รองรับ

ปลั๊กอินนี้รองรับ Unreal Engine 5.0 และเวอร์ชันต่อๆ ไปทั้งหมด

ตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์

  1. ดาวน์โหลดปลั๊กอิน Play Unreal Engine จากที่เก็บ GitHub

  2. คัดลอกโฟลเดอร์ GooglePlay ภายในโฟลเดอร์ Plugins ในโปรเจ็กต์ Unreal Engine

  3. เปิดโปรเจ็กต์ Unreal Engine แล้วคลิกแก้ไข → ปลั๊กอิน

  4. ค้นหา Google Play แล้วเลือกช่องทำเครื่องหมายเปิดอยู่

  5. รีสตาร์ทโปรเจ็กต์เกมและทริกเกอร์บิลด์

  6. เปิดไฟล์ Build.cs ของโปรเจ็กต์ แล้วเพิ่มโมดูล PlayIntegrity ลงใน PublicDependencyModuleNames

    using UnrealBuildTool;
    
    public class MyGame : ModuleRules
    {
      public MyGame(ReadOnlyTargetRules Target) : base(Target)
      {
        // ...
    
        PublicDependencyModuleNames.Add("PlayIntegrity");
    
        // ...
      }
    }
    

เนทีฟ

ติดตั้ง Play Core Native SDK เวอร์ชัน 1.13.0 ขึ้นไป ดูวิธีการได้ที่คู่มือการตั้งค่าสภาพแวดล้อมการพัฒนาของ Play Core Native

กำหนดค่าการตอบกลับจาก API (ไม่บังคับ)

การตอบกลับจาก API จะมีผลการตัดสินเริ่มต้นที่ส่งคืนในทุกคำขอ หากตั้งค่าการผสานรวม Play Integrity API ใน Play Console คุณจะปรับแต่งการตอบกลับจาก API ได้

คำตอบเริ่มต้น

ผลการตัดสินความสมบูรณ์ต่อไปนี้จะแสดงในการตอบกลับจาก Play Integrity API โดยค่าเริ่มต้น

ฟิลด์การตอบกลับ ค่านิยม คำอธิบาย
ความสมบูรณ์ของอุปกรณ์ MEETS_DEVICE_INTEGRITY แอปกำลังทำงานบนอุปกรณ์ Android ที่ขับเคลื่อนด้วย Play Protect ของแท้ที่ได้รับการรับรอง ใน Android 13 ขึ้นไป จะมีหลักฐานที่ได้รับการสนับสนุนจากฮาร์ดแวร์ว่า Bootloader ของอุปกรณ์ล็อกอยู่ และระบบปฏิบัติการ Android ที่โหลดเป็นรูปภาพของผู้ผลิตอุปกรณ์ที่ได้รับการรับรอง
ว่าง (ค่าว่าง) แอปกําลังทํางานในอุปกรณ์ที่มีสัญญาณการโจมตี (เช่น การฮุก API) หรือการบุกรุกระบบ (เช่น การรูท) หรือแอปไม่ทํางานในอุปกรณ์จริง (เช่น โปรแกรมจําลองที่ไม่ผ่านการตรวจสอบความน่าเชื่อถือของ Google Play)
รายละเอียดบัญชี Play LICENSED ผู้ใช้มีสิทธิ์ในการใช้แอป กล่าวคือ ผู้ใช้ได้ติดตั้งหรืออัปเดตแอปของคุณจาก Google Play ในอุปกรณ์ของตน
UNLICENSED ผู้ใช้ไม่มีสิทธิ์ในการใช้แอป กรณีเช่นนี้เกิดขึ้นเมื่อผู้ใช้โหลดแอปของคุณจากแหล่งที่ไม่รู้จัก หรือไม่ได้ดาวน์โหลดแอปจาก Google Play เป็นต้น
UNEVALUATED ระบบไม่ได้ประเมินรายละเอียดการอนุญาตให้ใช้สิทธิ เนื่องจากไม่เป็นไปตามข้อกําหนด ปัญหานี้อาจเกิดขึ้นได้จากหลายสาเหตุ เช่น
  • อุปกรณ์ไม่น่าเชื่อถือพอ
  • ผู้ใช้ไม่ได้ลงชื่อเข้าใช้ Google Play
  • Google Play ไม่รู้จักเวอร์ชันของแอปที่ติดตั้งในอุปกรณ์
ความสมบูรณ์ของแอปพลิเคชัน PLAY_RECOGNIZED แอปและใบรับรองตรงกับเวอร์ชันที่เผยแพร่โดย Google Play
UNRECOGNIZED_VERSION ใบรับรองหรือชื่อแพ็กเกจไม่ตรงกับบันทึกของ Google Play
UNEVALUATED ระบบไม่ได้ประเมินความสมบูรณ์ของแอปพลิเคชัน ไม่เป็นไปตามข้อกําหนดที่จําเป็น เช่น อุปกรณ์ไม่น่าเชื่อถือพอ

คำตอบแบบมีเงื่อนไข

หากคุณเผยแพร่แอปไปยัง Google Play Games สำหรับ PC ระบบจะเลือกรับป้ายกำกับเพิ่มเติมในผลการวินิจฉัยความสมบูรณ์ของอุปกรณ์ให้คุณโดยอัตโนมัติ

ฟิลด์การตอบกลับ ป้ายกำกับ คำอธิบาย
ความสมบูรณ์ของอุปกรณ์ MEETS_VIRTUAL_INTEGRITY แอปกำลังทำงานบนโปรแกรมจำลองของ Android ที่ขับเคลื่อนโดยบริการ Google Play โปรแกรมจำลองผ่านการตรวจสอบความสมบูรณ์ของระบบและเป็นไปตามข้อกำหนดหลักด้านความเข้ากันได้ของ Android

คำตอบที่ไม่บังคับ

หากตั้งค่าการผสานรวม Play Integrity API ใน Play Console หรือ Play SDK Console คุณจะเลือกรับข้อมูลในการตอบกลับจาก API ได้

หากต้องการเปลี่ยนแปลงการตอบกลับ API ให้ไปที่ Play Console แล้วไปที่ รุ่น > ความสมบูรณ์ของแอป ในส่วนคำตอบ ให้แก้ไขและบันทึก การเปลี่ยนแปลง

ข้อมูลอุปกรณ์และการเรียกคืนอุปกรณ์ (ไม่บังคับ)

แอปและ SDK สามารถเลือกใช้ป้ายกำกับอุปกรณ์เพิ่มเติมในผลการตัดสินด้านความสมบูรณ์ของอุปกรณ์ ได้ หลังจากที่คุณเลือกรับป้ายกำกับเพิ่มเติม การตอบกลับด้านความสมบูรณ์ จะมีป้ายกำกับหลายรายการสำหรับอุปกรณ์เดียวกัน หากตรงตามเงื่อนไขของแต่ละป้าย คุณสามารถเตรียมเซิร์ฟเวอร์แบ็กเอนด์ให้ทํางานแตกต่างกันได้ โดยขึ้นอยู่กับ ช่วงการตอบกลับที่เป็นไปได้ เช่น อุปกรณ์ที่แสดงป้ายกำกับ 3 รายการ (MEETS_STRONG_INTEGRITY, MEETS_DEVICE_INTEGRITY และ MEETS_BASIC_INTEGRITY ) อาจน่าเชื่อถือมากกว่าอุปกรณ์ที่แสดงป้ายกำกับเพียงรายการเดียว (MEETS_BASIC_INTEGRITY)

คุณเลือกใช้แอตทริบิวต์อุปกรณ์ได้ ซึ่งจะบอกเวอร์ชัน Android SDK ของระบบปฏิบัติการ Android ที่ทำงานในอุปกรณ์ ในอนาคต เราอาจ ขยายการใช้งานด้วยแอตทริบิวต์อื่นๆ ของอุปกรณ์

คุณเลือกใช้กิจกรรมล่าสุดในอุปกรณ์ได้ กิจกรรมล่าสุดในอุปกรณ์ จะแสดงระดับตั้งแต่ LEVEL_1 (จำนวนคำขอน้อย) ถึง LEVEL_4 (จำนวนคำขอมาก) เช่น อุปกรณ์ที่แสดงระดับกิจกรรมสูงกว่าปกติสำหรับแอปของคุณอย่างมากอาจพยายามสร้างโทเค็นความสมบูรณ์จำนวนมากเพื่อแจกจ่ายไปยังอุปกรณ์ที่ไม่น่าเชื่อถือ

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

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

ฟิลด์การตอบกลับ ป้ายกำกับ คำอธิบาย
ความสมบูรณ์ของอุปกรณ์ MEETS_BASIC_INTEGRITY แอปกำลังทำงานบนอุปกรณ์ที่ผ่านการตรวจสอบความสมบูรณ์ของระบบพื้นฐาน Bootloader ของอุปกรณ์อาจล็อกหรือไม่ล็อกก็ได้ และ สถานะการเปิดเครื่องอาจได้รับการยืนยันหรือไม่ก็ได้ อุปกรณ์อาจไม่ได้รับการรับรองจาก Play Protect ซึ่งในกรณีนี้ Google ไม่สามารถรับประกันความปลอดภัย ความเป็นส่วนตัว หรือความเข้ากันได้ของแอป ใน Android 13 ขึ้นไป MEETS_BASIC_INTEGRITYผลการตัดสินกำหนดให้ การรับรอง รูทของความน่าเชื่อถือต้องมาจาก Google
MEETS_STRONG_INTEGRITY แอปกำลังทำงานบนอุปกรณ์ Android ของแท้ที่ผ่านการรับรองจาก Play Protect ซึ่งได้รับการอัปเดตความปลอดภัยล่าสุด
  • ใน Android 13 ขึ้นไป MEETS_STRONG_INTEGRITY คำตัดสินต้องใช้MEETS_DEVICE_INTEGRITYและการอัปเดตความปลอดภัย ในปีที่ผ่านมาสำหรับพาร์ติชันทั้งหมดของอุปกรณ์ รวมถึงแพตช์พาร์ติชันระบบปฏิบัติการ Android และแพตช์พาร์ติชันของผู้ให้บริการ
  • ใน Android 12 และเวอร์ชันที่ต่ำกว่า MEETS_STRONG_INTEGRITY คำตัดสินกำหนดให้ต้องมีหลักฐานแบบใช้ฮาร์ดแวร์ที่ยืนยันความสมบูรณ์ของการบูตเท่านั้น และไม่กำหนดให้อุปกรณ์ต้องมีการอัปเดตความปลอดภัยล่าสุด ดังนั้น เมื่อใช้ MEETS_STRONG_INTEGRITY เราขอแนะนำให้ พิจารณาเวอร์ชัน Android SDK ใน ฟิลด์ deviceAttributes ด้วย
แอตทริบิวต์อุปกรณ์ sdkVersion: 19, 20, ..., 36 เวอร์ชัน SDK ของระบบปฏิบัติการ Android ที่ทำงานบนอุปกรณ์ หมายเลขที่แสดงผลจะสอดคล้องกับ Build.VERSION_CODES
ว่าง (ค่าว่าง) ระบบไม่ได้ประเมินเวอร์ชัน SDK เนื่องจากไม่เป็นไปตามข้อกําหนดที่จําเป็น ในกรณีนี้ ระบบจะไม่ตั้งค่าฟิลด์ sdkVersion ดังนั้นฟิลด์ deviceAttributes จึงว่างเปล่า ซึ่งอาจเกิดขึ้นจากสาเหตุต่อไปนี้
  • อุปกรณ์ไม่น่าเชื่อถือพอ
  • อุปกรณ์มีปัญหาทางเทคนิค
คำขอโทเค็นความสมบูรณ์ของ API มาตรฐานในอุปกรณ์นี้ ในชั่วโมงที่ผ่านมาต่อแอป คำขอโทเค็นความสมบูรณ์ของ API แบบคลาสสิกในอุปกรณ์นี้ ในชั่วโมงที่ผ่านมาต่อแอป
กิจกรรมล่าสุดในอุปกรณ์ LEVEL_1 (ต่ำสุด) ไม่เกิน 10 5 หรือน้อยกว่า
LEVEL_2 ระหว่าง 11 ถึง 25 ระหว่าง 6 ถึง 10
LEVEL_3 ระหว่าง 26 ถึง 50 ระหว่าง 11 ถึง 15
LEVEL_4 (สูงสุด) มากกว่า 50 มากกว่า 15
UNEVALUATED ระบบไม่ได้ประเมินกิจกรรมล่าสุดในอุปกรณ์ ซึ่งอาจเกิดขึ้นจากสาเหตุต่อไปนี้
  • อุปกรณ์ไม่น่าเชื่อถือพอ
  • Google Play ไม่รู้จักเวอร์ชันของแอปที่ติดตั้งในอุปกรณ์
  • อุปกรณ์มีปัญหาทางเทคนิค
การเรียกคืนอุปกรณ์ values: bitFirst, bitSecond, bitThird ค่าบิตเหล่านี้คือค่าที่คุณตั้งไว้ในอดีตสำหรับ อุปกรณ์ที่เฉพาะเจาะจง คุณเป็นผู้กำหนดความหมายของแต่ละบิต ค่า 3 บิต จะเป็นเท็จโดยค่าเริ่มต้น
writeDates: yyyymmFirst, yyyymmSecond, yyyymmThird ซึ่งเป็นวันที่เขียนค่าบิตใน UTC ที่ถูกต้องถึงปีและเดือน ระบบจะอัปเดตวันที่เขียนของบิตการเรียกคืนทุกครั้งที่มีการตั้งค่าบิตเป็น "จริง" และจะนำออกเมื่อตั้งค่าบิตเป็น "เท็จ"

รายละเอียดสภาพแวดล้อมที่ไม่บังคับ

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

หลังจากเลือกรับผลการตัดสินเหล่านี้แล้ว การตอบกลับของ API จะมีฟิลด์รายละเอียดสภาพแวดล้อมพร้อมผลการตัดสิน ดังนี้

ฟิลด์การตอบกลับ ค่านิยม คำอธิบาย
คำตัดสินความเสี่ยงในการเข้าถึงแอป KNOWN_INSTALLED แอปจะได้รับการติดตั้งโดย Google Play หรือโหลดไว้ล่วงหน้าในพาร์ติชันระบบ โดยผู้ผลิตอุปกรณ์
KNOWN_CAPTURING แอปที่ Google Play ติดตั้งหรือโหลดไว้ล่วงหน้าในอุปกรณ์กำลังทำงาน ซึ่งอาจใช้เพื่ออ่านหรือบันทึกอินพุตและเอาต์พุตของแอปที่ขอ เช่น แอปบันทึกหน้าจอ
KNOWN_CONTROLLING แอปที่ Google Play ติดตั้งหรือโหลดไว้ล่วงหน้าในอุปกรณ์กำลังทำงาน ซึ่งอาจใช้เพื่อควบคุมอุปกรณ์ รวมถึงอินพุตและเอาต์พุตของแอปที่ขอ เช่น แอปควบคุมระยะไกล
KNOWN_OVERLAYS แอปที่ Google Play ติดตั้งหรือโหลดไว้ล่วงหน้าในอุปกรณ์กำลังทำงานอยู่ ซึ่งอาจแสดงภาพซ้อนทับบนแอปที่ขอ
UNKNOWN_INSTALLED มีการติดตั้งแอปอื่นๆ ซึ่งไม่ได้ติดตั้งโดย Google Play หรือ โหลดไว้ล่วงหน้าในพาร์ติชันระบบโดยผู้ผลิตอุปกรณ์
UNKNOWN_CAPTURING แอปอื่นๆ กำลังทำงานอยู่ (ไม่ได้ติดตั้งโดย Play หรือโหลดไว้ล่วงหน้าในอุปกรณ์) ซึ่งอาจใช้เพื่ออ่านหรือจับภาพอินพุตและเอาต์พุตของแอปที่ขอ เช่น แอปบันทึกหน้าจอ
UNKNOWN_CONTROLLING แอปอื่นๆ กำลังทำงานอยู่ (ไม่ได้ติดตั้งโดย Play หรือโหลดไว้ล่วงหน้าในอุปกรณ์) ซึ่งอาจใช้เพื่อควบคุมอุปกรณ์ รวมถึงอินพุตและเอาต์พุตของแอปที่ขอ เช่น แอปควบคุมระยะไกล
UNKNOWN_OVERLAYS แอปอื่นๆ กำลังทำงานอยู่ (ไม่ได้ติดตั้งโดย Play หรือโหลดไว้ล่วงหน้าในอุปกรณ์) ซึ่งอาจแสดงภาพซ้อนทับในแอปที่ขอ
ว่าง (ค่าว่าง) ระบบจะไม่ประเมินความเสี่ยงในการเข้าถึงแอปหากไม่เป็นไปตามข้อกําหนดที่จําเป็น ในกรณีนี้ฟิลด์ appAccessRiskVerdict จะว่างเปล่า ปัญหานี้อาจเกิดขึ้นได้จากหลายสาเหตุ เช่น
  • อุปกรณ์ไม่น่าเชื่อถือพอ
  • รูปแบบของอุปกรณ์ไม่ใช่โทรศัพท์ แท็บเล็ต หรืออุปกรณ์แบบพับได้
  • อุปกรณ์ไม่ได้ใช้ Android 6 (API ระดับ 23) ขึ้นไป
  • Google Play ไม่รู้จักเวอร์ชันของแอปที่ติดตั้งในอุปกรณ์
  • Google Play Store ในอุปกรณ์ไม่ใช่เวอร์ชันล่าสุด
  • เกมเท่านั้น: บัญชีผู้ใช้ไม่มีใบอนุญาต Play สำหรับเกม
  • ใช้คำขอมาตรฐานกับพารามิเตอร์ verdictOptOut
  • มีการใช้คำขอมาตรฐานกับไลบรารี Play Integrity API เวอร์ชันที่ยังไม่รองรับความเสี่ยงในการเข้าถึงแอปสำหรับคำขอมาตรฐาน
ผลการตัดสินของ Play Protect NO_ISSUES Play Protect เปิดอยู่และไม่พบปัญหาเกี่ยวกับแอปในอุปกรณ์
NO_DATA Play Protect เปิดอยู่ แต่ยังไม่มีการสแกน อุปกรณ์หรือแอป Play Store อาจได้รับการรีเซ็ตเมื่อเร็วๆ นี้
POSSIBLE_RISK Play Protect ปิดอยู่
MEDIUM_RISK Play Protect เปิดอยู่และพบแอปที่อาจเป็นอันตรายซึ่งติดตั้งในอุปกรณ์
HIGH_RISK Play Protect เปิดอยู่และพบแอปที่เป็นอันตรายซึ่งติดตั้งอยู่ในอุปกรณ์
UNEVALUATED ระบบไม่ได้ประเมินคำตัดสินของ Play Protect ไม่เป็นไปตามข้อกําหนดที่จําเป็น เช่น อุปกรณ์ไม่น่าเชื่อถือพอ

กำหนดการตั้งค่าคำขอแบบคลาสสิก (ไม่บังคับ)

ข้ามส่วนนี้หากคุณวางแผนที่จะส่งคำขอ API มาตรฐานเท่านั้น

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

ให้ Google จัดการการเข้ารหัสการตอบกลับ (ค่าเริ่มต้นและแนะนำ)

ขอแนะนำให้คุณอนุญาตให้ Google สร้างและจัดการคีย์การเข้ารหัสการตอบกลับเพื่อปกป้องความปลอดภัยของแอป เซิร์ฟเวอร์แบ็กเอนด์ของคุณจะเรียกให้เซิร์ฟเวอร์ของ Google Play ถอดรหัสการตอบกลับต่างๆ

จัดการและดาวน์โหลดคีย์การเข้ารหัสการตอบกลับของฉัน

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

โปรดอย่าลืมว่าไม่ควรถอดรหัสหรือยืนยันโทเค็นที่ได้รับจากภายในแอปไคลเอ็นต์ และไม่ควรเปิดเผยคีย์การถอดรหัสต่อแอปไคลเอ็นต์

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

สลับระหว่างคีย์การเข้ารหัสการตอบกลับที่จัดการใน Google กับคีย์ที่จัดการด้วยตนเอง

หากปัจจุบัน Google จัดการการเข้ารหัสการตอบกลับของคุณ และคุณต้องการเปลี่ยนไป จัดการและดาวน์โหลดคีย์การเข้ารหัสการตอบกลับด้วยตนเอง ให้ทำตามขั้นตอนต่อไปนี้

  1. เข้าสู่ระบบ Play Console
  2. เลือกแอปที่ใช้ Play Integrity API
  3. ในส่วนรุ่นของเมนูด้านซ้าย ให้ไปที่ความสมบูรณ์ของแอป
  4. คลิกการตั้งค่าข้าง Play Integrity API
  5. ในส่วนคำขอแบบคลาสสิกของหน้าเว็บ ให้คลิกแก้ไขข้างการเข้ารหัสการตอบกลับ
  6. ในหน้าต่างที่ปรากฏขึ้น ให้คลิกจัดการและดาวน์โหลดคีย์การเข้ารหัสการตอบกลับของฉัน
  7. ทำตามวิธีการเพื่ออัปโหลดคีย์สาธารณะ
  8. หลังจากหน้าต่างแสดงว่าการอัปโหลดสำเร็จแล้ว ให้คลิกบันทึกและ ระบบจะดาวน์โหลดคีย์ที่เข้ารหัสโดยอัตโนมัติ
  9. เปลี่ยนตรรกะเซิร์ฟเวอร์เพื่อให้คุณถอดรหัสและยืนยันโทเค็นความสมบูรณ์ ในเครื่อง ในสภาพแวดล้อมของเซิร์ฟเวอร์ที่ปลอดภัยของคุณเอง โดยใช้คีย์การเข้ารหัสการตอบกลับ
  10. (ไม่บังคับ) เมื่อจัดการคีย์การเข้ารหัสการตอบกลับด้วยตนเอง แอปจะยังคงใช้เซิร์ฟเวอร์ของ Google Play เพื่อถอดรหัสและยืนยันการตอบกลับได้

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

  1. เปลี่ยนตรรกะของเซิร์ฟเวอร์เพื่อให้คุณถอดรหัสและยืนยันในเซิร์ฟเวอร์ของ Google เท่านั้น
  2. เข้าสู่ระบบ Play Console
  3. เลือกแอปที่ใช้ Play Integrity API
  4. ในส่วนรุ่นของเมนูด้านซ้าย ให้ไปที่ความสมบูรณ์ของแอป
  5. คลิกการตั้งค่าข้าง Play Integrity API
  6. ในส่วนคำขอแบบคลาสสิกของหน้าเว็บ ให้คลิกแก้ไขข้างการเข้ารหัสการตอบกลับ
  7. ในหน้าต่างที่ปรากฏขึ้น ให้คลิกให้ Google จัดการการเข้ารหัสการตอบกลับของฉัน (แนะนำ)
  8. คลิกบันทึกการเปลี่ยนแปลง