SDK บริการเกมของ Google Play v1 อาศัย Google Sign-In สำหรับ Android ซึ่งเลิกใช้งานแล้วและจะถูกนำออกจาก Google Play Services Auth SDK (com.google.android.gms:play-services-auth
) ในปี 2025
แอปเกมใหม่จะใช้ Games v1 ได้จนถึงปี 2025 การนํา Google Sign-In ออกจะทำให้เกิดปัญหาการพึ่งพาในแอปเกมที่มีอยู่ การย้ายข้อมูลแอปเกมที่มีอยู่จาก SDK เกม v1 ไปยัง SDK เกม v2 ช่วยแก้ปัญหาเกี่ยวกับ Dependency ที่เกิดจากการนํา Google Sign-In ออก
เอกสารนี้จะช่วยให้คุณเข้าใจการโต้ตอบระหว่างแอปพลิเคชันเกมกับ SDK ต่างๆ เอกสารนี้ยังเปรียบเทียบฟีเจอร์ของแอปพลิเคชันกับฟีเจอร์ของ SDK บริการเกมของ Play เวอร์ชัน 1 และเวอร์ชัน 2 ด้วย
การโต้ตอบของ SDK
แผนภาพแสดงการโต้ตอบระหว่างแอปพลิเคชันเกมใน Android, Google Mobile Services (GMS) Core, บริการ Play Games และเซิร์ฟเวอร์เกมของบุคคลที่สาม (3P) โดยจะไฮไลต์วิธีที่แอปพลิเคชันใช้บริการของ Google เพื่อตรวจสอบสิทธิ์และฟีเจอร์เกม รวมถึงการโต้ตอบกับระบบของบุคคลที่สามแยกต่างหาก
games v2 (ปัจจุบัน)
games v1 (เดิม)
ภาพรวมคร่าวๆ ของคอมโพเนนต์และ SDK มีดังนี้
- แอปพลิเคชันเกม
- ข้อมูลนี้แสดงแอปพลิเคชันเกมของผู้ใช้ที่ทำงานบนอุปกรณ์ที่ขับเคลื่อนโดย Android
- ซึ่งประกอบด้วยองค์ประกอบหลัก 2 อย่าง ได้แก่
- SDK ของ games v1 หรือ games v2 SDK ฝั่งไคลเอ็นต์ที่รับผิดชอบการโต้ตอบกับบริการ Play Games
- Auth SDK Google Play Services Auth SDK มีหน้าที่จัดการขั้นตอนการตรวจสอบสิทธิ์และการให้สิทธิ์ผู้ใช้ในเกม v1
- SDK ทั้ง 2 รายการสื่อสารโดยใช้ AIDL (ภาษาที่ใช้สื่อสารข้อมูลระหว่างคอมโพเนนต์ของ Android) ซึ่งระบุรูปแบบการสื่อสารระหว่างกระบวนการหรือบริการต่างๆ
- GMS Core หรือที่เรียกว่าบริการ Google Play
- ซึ่งเป็นเลเยอร์ที่เป็นกรรมสิทธิ์ของ Google ใน Android
- แอปพลิเคชันเกมใช้โมดูล GMS Core 2 รายการ ได้แก่
- ข้อบังคับของเกม มีฟีเจอร์เฉพาะเกม เช่น ลีดเดอร์บอร์ด รางวัลพิเศษ และการจัดการสถานะเกม
- Auth Module จัดการการตรวจสอบสิทธิ์ของผู้ใช้และการดำเนินการให้สิทธิ์
- SDK ของเกมและ Auth ในแอปพลิเคชันเกมจะสื่อสารกับข้อบังคับที่เกี่ยวข้องโดยใช้อินเทอร์เฟซ AIDL ซึ่งแสดงถึงการสื่อสารระหว่างกระบวนการ (IPC)
- เกตเวย์บริการเกมของ Play
- เกตเวย์เชิงตรรกะที่สื่อกลางการสื่อสารระหว่าง GMS Core กับเซิร์ฟเวอร์บริการเกมของ Play
- จัดการคําขอ API, การเปลี่ยนรูปแบบข้อมูล และการตรวจสอบสิทธิ์สําหรับการสื่อสารของเซิร์ฟเวอร์
- เซิร์ฟเวอร์บริการเกมของ Play
- แสดงบริการแบ็กเอนด์ของบริการเกมของ Play ที่มีหน้าที่จัดเก็บข้อมูลเกม จัดการบัญชีผู้ใช้ และอำนวยความสะดวกให้ฟีเจอร์ผู้เล่นหลายคน
- เกตเวย์เกมของบุคคลที่สาม
- หากแอปพลิเคชันเกมของคุณมีคุณสมบัติเป็นแอปพลิเคชันของบุคคลที่สาม (3P) ไลบรารีไคลเอ็นต์จะสื่อสารกับเซิร์ฟเวอร์บริการเกมของ Play ผ่านเซิร์ฟเวอร์เกมของบุคคลที่สาม
- บอกเป็นนัยว่าแอปพลิเคชันสามารถตรวจสอบสิทธิ์กับผู้ให้บริการรายอื่นได้ด้วย
- เซิร์ฟเวอร์เกมของบุคคลที่สาม
- แสดงเซิร์ฟเวอร์ภายนอกที่ไม่บังคับที่แอปพลิเคชันเกมโต้ตอบได้ ซึ่งอาจใช้สำหรับฟีเจอร์ที่กำหนดเองหรือการจัดการข้อมูล
- การสื่อสารกับแอปพลิเคชันจะเกิดขึ้นผ่านเกตเวย์เกมของบุคคลที่สาม
การเปรียบเทียบฟีเจอร์
ตารางนี้แสดงการเปรียบเทียบฟีเจอร์ระหว่าง SDK ของ Games เวอร์ชัน 1 กับ Games เวอร์ชัน 2
ฟีเจอร์ |
games v1 SDK |
games v2 SDK |
---|---|---|
การตรวจสอบสิทธิ์ |
ต้องผสานรวมกับ play-services-auth |
ใช้งานง่ายและมีประสิทธิภาพ ไม่ต้องใช้ play-services-auth
|
การให้สิทธิ์ |
รหัสเพิ่มเติมสำหรับ "สำเร็จ" "ไม่สำเร็จ" และ "ลองอีกครั้ง" |
จัดการโดย SDK |
โทเค็นการเข้าถึงเซิร์ฟเวอร์ |
สามารถขอขอบเขต OAuth 2.0 เพิ่มเติมได้โดยใช้ GoogleSigninClient โค้ดเพิ่มเติมสำหรับการจัดการข้อผิดพลาดระหว่างการลงชื่อเข้าใช้ |
ไม่อนุญาตให้มีขอบเขตเพิ่มเติม โค้ดเพิ่มเติมที่มี Callback สำเร็จ/ไม่สำเร็จพร้อมด้วย serverAuthcode |
ขั้นตอนการลงชื่อเข้าใช้ |
การใช้งาน GoogleSigninClient โค้ดเพิ่มเติมสำหรับการจัดการโค้ดที่เขียนไว้ล่วงหน้าสำหรับการลงชื่อเข้าใช้อัตโนมัติ และการแก้ไขข้อผิดพลาด |
การใช้งาน GamesSignInClient SDK จะจัดการโค้ด Boilerplate, การลงชื่อเข้าใช้โดยอัตโนมัติ และการจัดการข้อผิดพลาด |
ป๊อปอัปต้อนรับ |
ต้องใช้โค้ดเพิ่มเติม นักพัฒนาแอปสามารถควบคุมตําแหน่งและเวลาแสดงโฆษณา |
ไม่ต้องเขียนโค้ดเพิ่มเติม อินเทอร์เฟซผู้ใช้ที่สอดคล้องกันในเกมทั้งหมดที่กำหนดค่า PGS V2 . |
Dependencies |
ต้องมี play-services-auth |
ไม่มีทรัพยากร Dependency แยกต่างหากใน play-services-auth |
ออกจากระบบ |
ใช้ GoogleSignInClient.signOut |
ไม่รองรับ Sign-out API |
บัญชีบริการเกมของ Play หลายบัญชีและการตั้งค่าต่อเกม |
การจัดการและการเลือกบัญชีไม่พร้อมใช้งาน |
คุณสามารถจัดการบัญชีบริการเกมของ Play สำหรับแต่ละเกมได้ ซึ่งจะช่วยให้คุณเลือกบัญชีที่จะใช้สำหรับแต่ละเกมได้ |