หน้านี้อธิบายวิธีตั้งค่าแอปหรือเกมให้ใช้ 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
ใช้ Google Play SDK 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 นอกเหนือจากช่องทางการเผยแพร่อื่นๆ แม้ว่าจะมีขีดจำกัดสูงสุดรายวันที่เพิ่มขึ้น คุณก็ควรจำกัดคำขอแบบคลาสสิกต่อผู้ใช้ให้เป็นการดำเนินการที่มีมูลค่าสูงซึ่งเกิดขึ้นนานๆ ครั้งต่อไป เพื่อรักษาข้อมูลผู้ใช้และแบตเตอรี่
หากต้องการขอเพิ่มจำนวนคำขอสูงสุดต่อวัน ให้ทำดังนี้
- ลิงก์โปรเจ็กต์ Google Cloud ที่คุณใช้สำหรับ Play Integrity API ใน Play Console
- ตรวจสอบว่าคุณใช้ตรรกะ API อย่างถูกต้องแล้ว ซึ่งรวมถึง กลยุทธ์การลองใหม่ที่แนะนํา
- ขอเพิ่มโควต้าโดยใช้แบบฟอร์มนี้
การเพิ่มโควต้า 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
เปิดการตั้งค่า Package Manager โดยเลือกตัวเลือกเมนู Unity แก้ไข > การตั้งค่าโปรเจ็กต์ > Package Manager
เพิ่ม 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
เปิดเมนู Package Manager โดยเลือกตัวเลือกเมนู Unity Window > Package Manager
ตั้งค่าเมนูแบบเลื่อนลงของขอบเขตผู้จัดการเพื่อเลือกรีจิสทรีของฉัน
เลือกแพ็กเกจปลั๊กอิน Google Play Integrity สำหรับ Unity จาก รายการแพ็กเกจ แล้วกดติดตั้ง
นำเข้าจาก GitHub
ดาวน์โหลด
.unitypackage
เวอร์ชันล่าสุดจาก GitHubนำเข้าไฟล์
.unitypackage
โดยเลือกตัวเลือกเมนู Unity ชิ้นงาน > นำเข้าแพ็กเกจ > แพ็กเกจที่กำหนดเอง แล้วนำเข้าทุกรายการ
Unreal Engine
ส่วนต่อไปนี้จะอธิบายวิธีผสานรวมและตั้งค่า Google Play Integrity API สำหรับโปรเจ็กต์ Unreal Engine
เวอร์ชัน Unreal Engine ที่รองรับ
ปลั๊กอินนี้รองรับ Unreal Engine 5.0 และเวอร์ชันต่อๆ ไปทั้งหมด
ตั้งค่าสภาพแวดล้อมในการพัฒนาซอฟต์แวร์
ดาวน์โหลดปลั๊กอิน Play Unreal Engine จากที่เก็บ GitHub
คัดลอกโฟลเดอร์
GooglePlay
ภายในโฟลเดอร์Plugins
ในโปรเจ็กต์ Unreal Engineเปิดโปรเจ็กต์ Unreal Engine แล้วคลิกแก้ไข → ปลั๊กอิน
ค้นหา Google Play แล้วเลือกช่องทำเครื่องหมายเปิดอยู่
รีสตาร์ทโปรเจ็กต์เกมและทริกเกอร์บิลด์
เปิดไฟล์
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 |
ระบบไม่ได้ประเมินรายละเอียดการอนุญาตให้ใช้สิทธิ เนื่องจากไม่เป็นไปตามข้อกําหนด ปัญหานี้อาจเกิดขึ้นได้จากหลายสาเหตุ เช่น
|
|
ความสมบูรณ์ของแอปพลิเคชัน | 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
ซึ่งได้รับการอัปเดตความปลอดภัยล่าสุด
|
||
แอตทริบิวต์อุปกรณ์ | 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 |
ระบบไม่ได้ประเมินกิจกรรมล่าสุดในอุปกรณ์ ซึ่งอาจเกิดขึ้นจากสาเหตุต่อไปนี้
|
||
การเรียกคืนอุปกรณ์ | 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 จะว่างเปล่า ปัญหานี้อาจเกิดขึ้นได้จากหลายสาเหตุ เช่น
|
|
ผลการตัดสินของ 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 จัดการการเข้ารหัสการตอบกลับของคุณ และคุณต้องการเปลี่ยนไป จัดการและดาวน์โหลดคีย์การเข้ารหัสการตอบกลับด้วยตนเอง ให้ทำตามขั้นตอนต่อไปนี้
- เข้าสู่ระบบ Play Console
- เลือกแอปที่ใช้ Play Integrity API
- ในส่วนรุ่นของเมนูด้านซ้าย ให้ไปที่ความสมบูรณ์ของแอป
- คลิกการตั้งค่าข้าง Play Integrity API
- ในส่วนคำขอแบบคลาสสิกของหน้าเว็บ ให้คลิกแก้ไขข้างการเข้ารหัสการตอบกลับ
- ในหน้าต่างที่ปรากฏขึ้น ให้คลิกจัดการและดาวน์โหลดคีย์การเข้ารหัสการตอบกลับของฉัน
- ทำตามวิธีการเพื่ออัปโหลดคีย์สาธารณะ
- หลังจากหน้าต่างแสดงว่าการอัปโหลดสำเร็จแล้ว ให้คลิกบันทึกและ ระบบจะดาวน์โหลดคีย์ที่เข้ารหัสโดยอัตโนมัติ
- เปลี่ยนตรรกะเซิร์ฟเวอร์เพื่อให้คุณถอดรหัสและยืนยันโทเค็นความสมบูรณ์ ในเครื่อง ในสภาพแวดล้อมของเซิร์ฟเวอร์ที่ปลอดภัยของคุณเอง โดยใช้คีย์การเข้ารหัสการตอบกลับ
- (ไม่บังคับ) เมื่อจัดการคีย์การเข้ารหัสการตอบกลับด้วยตนเอง แอปจะยังคงใช้เซิร์ฟเวอร์ของ Google Play เพื่อถอดรหัสและยืนยันการตอบกลับได้
หากคุณจัดการคีย์การเข้ารหัสการตอบกลับด้วยตนเองและต้องการเปลี่ยนให้ Google จัดการการเข้ารหัสการตอบกลับ ให้ทำตามขั้นตอนต่อไปนี้
- เปลี่ยนตรรกะของเซิร์ฟเวอร์เพื่อให้คุณถอดรหัสและยืนยันในเซิร์ฟเวอร์ของ Google เท่านั้น
- เข้าสู่ระบบ Play Console
- เลือกแอปที่ใช้ Play Integrity API
- ในส่วนรุ่นของเมนูด้านซ้าย ให้ไปที่ความสมบูรณ์ของแอป
- คลิกการตั้งค่าข้าง Play Integrity API
- ในส่วนคำขอแบบคลาสสิกของหน้าเว็บ ให้คลิกแก้ไขข้างการเข้ารหัสการตอบกลับ
- ในหน้าต่างที่ปรากฏขึ้น ให้คลิกให้ Google จัดการการเข้ารหัสการตอบกลับของฉัน (แนะนำ)
- คลิกบันทึกการเปลี่ยนแปลง