ภาพรวมการย้ายข้อมูล

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 (ปัจจุบัน)

การโต้ตอบระหว่างแอปพลิเคชันเกมใน Android, GMS Core, บริการ Play Games และเซิร์ฟเวอร์เกมของบุคคลที่สาม (3P)
การโต้ตอบระหว่างแอปพลิเคชันเกมใน Android, GMS Core, บริการเกมของ Play และเซิร์ฟเวอร์เกมของบุคคลที่สาม (3P) (คลิกเพื่อขยาย)

games v1 (เดิม)

การโต้ตอบระหว่างแอปพลิเคชันเกมใน Android, GMS Core, บริการ Play Games และเซิร์ฟเวอร์เกมของบุคคลที่สาม (3P)
การโต้ตอบระหว่างแอปพลิเคชันเกมใน Android, GMS Core, บริการ Play Games และเซิร์ฟเวอร์เกมของบุคคลที่สาม (3P) (คลิกเพื่อขยาย)

ภาพรวมคร่าวๆ ของคอมโพเนนต์และ 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 สำหรับแต่ละเกมได้ ซึ่งจะช่วยให้คุณเลือกบัญชีที่จะใช้สำหรับแต่ละเกมได้