API การเรียกคืน

Recall API ช่วยให้เกมจัดการลิงก์ระหว่างผู้ใช้บริการเกมของ Google Play (PGS) กับบัญชีในเกมได้โดยจัดเก็บโทเค็นการเรียกคืนไว้ในเซิร์ฟเวอร์ของ Google ต่อไปนี้เป็นตัวอย่างสถานการณ์ที่อาจใช้ Recall API

  1. ผู้ใช้กำลังเล่นเกมที่นักพัฒนาแอปมีระบบข้อมูลประจำตัวเพื่อติดตามความคืบหน้าของผู้ใช้ และใช้ PGS ควบคู่ไปกับวิธีการตรวจสอบสิทธิ์อื่นๆ เพื่อเข้าสู่ระบบผู้ใช้ในเกม ในตัวอย่างนี้ ผู้ใช้เข้าสู่ระบบบัญชี PGS Laura และสร้างบัญชีในเกมด้วยระบบการระบุตัวตนของนักพัฒนาแอปชื่อ Racer94 ขณะที่ผู้ใช้เล่นเกม เซิร์ฟเวอร์เกมของนักพัฒนาแอปจะซิงค์ความคืบหน้าของผู้ใช้

    ผู้ใช้เข้าสู่ระบบด้วย PGS และบัญชีในเกม

  2. นอกจากนี้ นักพัฒนาแอปจะบันทึกโทเค็นการเรียกคืนไว้กับ Google ซึ่งสอดคล้องกับบัญชีในเกมของผู้ใช้ Google จะจัดเก็บโทเค็น Recall นั้นกับโปรไฟล์ PGS ของผู้ใช้โดยอัตโนมัติ

    เซิร์ฟเวอร์เกมจัดเก็บโทเค็นการเรียกคืนไว้ในเซิร์ฟเวอร์ของ Google

  3. ตอนนี้ผู้ใช้ตัดสินใจที่จะเล่นเกมใน GPG บน PC เป็นครั้งแรก ระบบจะลงชื่อเข้าใช้ผู้ใช้ด้วยบัญชี PGS โดยอัตโนมัติ และไคลเอ็นต์เกมจะตรวจสอบว่าผู้ใช้ PGS รายนี้มีข้อมูลความคืบหน้าใดๆ หรือไม่ จากนั้นเซิร์ฟเวอร์เกมจะค้นหา Google เพื่อดูว่ามีโทเค็นสำหรับบัญชี PGS นี้หรือไม่ เนื่องจากมีข้อมูลดังกล่าว Google จึงส่งโทเค็นการเรียกคืนกลับไป และเซิร์ฟเวอร์เกมก็ใช้โทเค็นดังกล่าวเพื่อค้นหาบัญชีที่เชื่อมโยงของผู้ใช้ Racer94 และกู้คืนความคืบหน้าของผู้ใช้ เนื่องจากการลงชื่อเข้าใช้ด้วย PGS เป็นประสบการณ์ที่ราบรื่น แอปจึงกู้คืนความคืบหน้าของผู้ใช้ได้โดยที่ผู้ใช้ไม่ต้องป้อนชื่อผู้ใช้หรือรหัสผ่าน นอกจากนี้ นักพัฒนาแอปสามารถใช้การลงชื่อเข้าใช้ PGS กับระบบการระบุตัวตนที่มีอยู่ และพึ่งพา Google ในการจัดเก็บลิงก์ระหว่างความคืบหน้าของผู้เล่นกับบัญชี PGS

    เซิร์ฟเวอร์เกมกู้คืนความคืบหน้าด้วยโทเค็นการเรียกคืน

ดังที่เห็นในตัวอย่างก่อนหน้านี้ การเรียกคืนข้อมูลด้วย Recall API ประกอบด้วยการดำเนินการหลัก 2 อย่าง ดังนี้

  • การจัดเก็บโทเค็นไว้กับ Google เมื่อผู้ใช้เข้าสู่ระบบด้วยบัญชีในเกม

  • การเรียกโทเค็นของผู้ใช้เพื่อกู้คืนบัญชีในเกม

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

กฎ Cardinality

Recall API จะบังคับใช้ความสัมพันธ์แบบ 1:1 ระหว่างโปรไฟล์ PGS กับบัญชีในเกม (เรียกว่ากฎ Cardinality) โดยที่ผู้ใช้ 1 คนจะลิงก์กับโปรไฟล์ PGS ได้เพียงโปรไฟล์เดียว และโปรไฟล์ PGS 1 รายการจะลิงก์กับผู้ใช้ได้เพียง 1 คนเท่านั้น ระบบจะใช้ข้อมูลระบุตัวตนนี้เป็นตัวระบุที่คงที่สำหรับบัญชีในเกม เนื่องจากโทเค็นการเรียกคืนอาจเปลี่ยนแปลงเมื่อเวลาผ่านไป

ข้อมูลระบุตัวตนที่ลิงก์กับโปรไฟล์ PGS อาจเปลี่ยนแปลงเมื่อเวลาผ่านไปด้วย (เนื่องจากมีการลิงก์บัญชีในเกมต่างๆ กับโปรไฟล์ PGS)

ขั้นตอนทางเทคนิคสำหรับการจัดเก็บและเรียกข้อมูลโทเค็น Recall

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

ขั้นตอนที่ 1: ลงชื่อเข้าใช้ผู้ใช้ PGS และเรียกข้อมูลรหัสเซสชัน

เกมจะเริ่มต้น PGS SDK และพยายามลงชื่อเข้าใช้ผู้ใช้ด้วย PGS

ผู้ใช้ลงชื่อเข้าใช้ด้วย PGS

สมมติว่าผู้ใช้ลงชื่อเข้าใช้แล้ว ให้ขอรหัสเซสชันจาก Games SDK ในไคลเอ็นต์เกม และขอโทเค็น OAuth 2.0 จากแบ็กเอนด์ OAuth ของ Google ระบบจะใช้รหัสเซสชันและโทเค็น OAuth 2.0 เพื่อสื่อสารกับแบ็กเอนด์ของ Google Games

นักพัฒนาแอปขอรหัสเซสชัน

ขั้นตอนที่ 2: เรียกข้อมูลโทเค็นการเรียกคืนที่มีอยู่

ขอโทเค็นการเรียกคืนที่เชื่อมโยงกับบัญชีผู้ใช้ PGS หากมีโทเค็น ให้ไปที่ขั้นตอนที่ 3ก และกู้คืนความคืบหน้า หรือหากเป็นผู้ใช้ใหม่และไม่มีโทเค็น ให้ไปที่ขั้นตอนที่ 3ข และจัดเก็บโทเค็นใหม่

นักพัฒนาแอปเรียกข้อมูลโทเค็นการเรียกคืน

ขั้นตอนที่ 3ก: หากมีโทเค็น ให้กู้คืนความคืบหน้า

หากมีโทเค็น ให้เรียกข้อมูลและถอดรหัสโทเค็น รวมถึงกู้คืนข้อมูลผู้ใช้

นักพัฒนาแอปกู้คืนข้อมูลจาก recall
token

ขั้นตอนที่ 3ข: หากไม่มีโทเค็น ให้จัดเก็บโทเค็น

เนื่องจากไม่มีโทเค็น ระบบจึงไม่สามารถกู้คืนความคืบหน้าได้ ผู้ใช้ลงชื่อเข้าใช้ด้วยระบบข้อมูลประจำตัวของนักพัฒนาแอป หรือสร้างบัญชีใหม่หากยังไม่มี หมายเหตุ - การดําเนินการนี้ไม่ใช่การลงชื่อเข้าใช้ด้วย PGS (ซึ่งดำเนินการไปแล้ว) แต่เป็นการเข้าสู่ระบบด้วยระบบข้อมูลประจำตัวของนักพัฒนาแอปภายนอก PGS

ผู้ใช้ลงชื่อเข้าใช้ด้วยบัญชีในเกม

สร้างโทเค็นการเรียกคืนที่เข้ารหัสซึ่งเข้ารหัสบัญชีในเกมของผู้ใช้ และส่งไปยัง Google พร้อมกับรหัสเซสชันและโทเค็น OAuth 2.0 เมื่อถึงจุดนี้ Google จะสร้างการเชื่อมโยงระหว่างโทเค็นการเรียกคืนที่ส่งไปกับบัญชี PGS ของผู้เล่น

นักพัฒนาแอปจัดเก็บโทเค็นการเรียกคืน

ขั้นตอนสำหรับผู้ใช้ที่ไม่มีโปรไฟล์ PGS

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

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

จัดเก็บคู่โทเค็นและบุคคล

ผู้ใช้ที่ไม่มีโปรไฟล์ PGS เปิดเกม

  1. ผู้ใช้ที่ไม่มีโปรไฟล์ PGS เปิดเกมที่เปิดใช้การเรียกคืนแบบไม่มีโปรไฟล์
  2. Games SDK ทริกเกอร์การลงชื่อเข้าใช้อัตโนมัติ ซึ่งดำเนินการไม่สำเร็จเนื่องจากผู้ใช้ไม่มีโปรไฟล์ PGS
  3. Games SDK จะแสดงแถบแสดงข้อความเพื่อแจ้งให้ผู้ใช้ทราบว่าเกมผสานรวมกับ Google แล้ว แบนเนอร์นี้จะดำเนินการได้ ผู้ใช้สามารถปิดใช้การเรียกคืนจนกว่าจะมีการสร้างโปรไฟล์
  4. เกมขอสิทธิ์เข้าถึงการเรียกคืน โปรดทราบว่า PGS จะปฏิเสธคำขอเข้าถึงการเรียกคืนเมื่อมีโปรไฟล์ PGS ในอุปกรณ์หรือเมื่อไม่มีบัญชี Google ในอุปกรณ์ ในกรณีนี้ เกมควรดำเนินต่อไปโดยไม่ใช้ PGS
  5. หลังจากผู้ใช้เข้าสู่ระบบด้วยบัญชีในเกมแล้ว เกมจะสร้างคู่โทเค็นและบุคคลสำหรับผู้ใช้ซึ่งสอดคล้องกับบัญชีในเกม เกมจะจัดเก็บคู่นี้ไว้กับ Google เกมอาจจัดเก็บโทเค็นเพิ่มเติมในภายหลังหากผู้ใช้เข้าสู่ระบบบัญชีอื่นๆ ในเกม

เปิดเกมในอุปกรณ์เครื่องใหม่

  1. ผู้ใช้ที่ไม่มีโปรไฟล์ PGS เปิดเกมที่เปิดใช้การเรียกคืนแบบไม่มีโปรไฟล์ในอุปกรณ์
  2. เกมจะบันทึกโทเค็น Recall ที่ไม่มีโปรไฟล์ตามที่อธิบายไว้ในจัดเก็บโทเค็นและคู่ข้อมูลพร็อพเพอร์ตี้
  3. ผู้ใช้เปิดเกมเดียวกันในอุปกรณ์เครื่องอื่นที่มีการตั้งค่าบัญชีเดียวกัน
  4. Games SDK ทริกเกอร์การสร้างโปรไฟล์ ผู้ใช้สามารถตรวจสอบและปฏิเสธโทเค็นการเรียกคืนที่เก็บไว้ก่อนหน้านี้ได้ ผู้ใช้สร้างโปรไฟล์ PGS ในเวลานี้
  5. การลงชื่อเข้าใช้ PGS โดยอัตโนมัติเสร็จสมบูรณ์ และเกมจะได้รับสถานะ "ตรวจสอบสิทธิ์แล้ว"
  6. เกมจะดึงข้อมูลโทเค็นการเรียกคืนของผู้ใช้ตามปกติ

ขั้นตอนถัดไป

หากต้องการผสานรวม Recall API กับไคลเอ็นต์และเซิร์ฟเวอร์เกม ให้ทำตามคำแนะนำนี้