การลิงก์บัญชีและตัวตน

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

ลิงก์บัญชีผู้ใช้เพื่อเปิดใช้ความต่อเนื่องและการเล่นข้ามอุปกรณ์

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

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

คุณต้องใช้ฟีเจอร์สำคัญ 2 อย่างต่อไปนี้เพื่อให้เล่นได้อย่างต่อเนื่องและเล่นข้ามอุปกรณ์ได้อย่างราบรื่น

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

การผสานรวมบริการเกมของ Play ใหม่

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

การลิงก์บัญชีโดยใช้ Recall API

Recall API เป็นโซลูชันที่แนะนำสำหรับการลิงก์บัญชีผู้ใช้ ในเกมข้ามแพลตฟอร์ม API นี้มีประโยชน์อย่างยิ่งสำหรับเกมที่ไม่มีการผสานรวมบริการเกมของ Play หรือเกมที่ใช้โซลูชันการตรวจสอบสิทธิ์แพลตฟอร์มเพิ่มเติมนอกเหนือจากบริการเกมของ Play

Recall API ช่วยให้การตั้งค่าแบ็กเอนด์ของเกมง่ายขึ้นด้วยการจัดการการเชื่อมโยงบัญชี

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

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

เกมต้องใช้อัลกอริทึมการเข้ารหัสที่แข็งแกร่งเมื่อสร้างโทเค็นการเรียกคืนเพื่อปกป้องข้อมูลผู้ใช้และรักษาความปลอดภัย

ดูข้อมูลเพิ่มเติมเกี่ยวกับวิธีการทำงานของฟีเจอร์เรียกคืนได้ที่ Recall API

หากต้องการใช้ฟีเจอร์ Recall API โปรดดูผสานรวม Recall API ของบริการเกมของ Play ภายในเกม

จัดการหลายบัญชีด้วย Recall API

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

หากต้องการใช้วิธีนี้ ให้ทำตามขั้นตอนต่อไปนี้

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

การผสานรวมบริการเกมของ Play ที่มีอยู่

ส่วนนี้อธิบายวิธีผสานรวมเกมกับบริการเกมของ Play โดยการ เชื่อมโยงบัญชีผู้เล่น ดูวิธีใช้รหัสผู้เล่นเพื่อระบุผู้เล่นที่ผ่านการตรวจสอบสิทธิ์ และจัดการบัญชีเกมหลายบัญชีสำหรับผู้ใช้บริการเกมของ Play รายเดียว

ผูกกับ Player_id

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

เกมที่มีการตั้งค่าแบ็กเอนด์ด้วยบริการเกมของ Play Player_Id หรือ เกมที่ต้องรองรับผู้ใช้ที่เป็นเด็กควรใช้ Player_Id และเชื่อมโยง บัญชีเกมและบัญชีบุคคลที่สามกับ Player_Id

ทำความเข้าใจลักษณะการทำงานของรหัสผู้เล่น

  • สอดคล้องกันภายในเกม: รหัสผู้เล่นจะยังคงสอดคล้องกันสำหรับผู้ใช้ ในอุปกรณ์หลายเครื่องเมื่อเล่นเกมเดียวกัน
  • ไม่สอดคล้องกันระหว่างเกม: รหัสผู้เล่นอาจไม่สอดคล้องกันเสมอเมื่อผู้ใช้เล่นเกมต่างๆ

ดูข้อมูลเพิ่มเติมได้ที่รหัสผู้เล่นรุ่นใหม่

จัดการหลายบัญชีต่อผู้ใช้ 1 รายด้วยการเชื่อมโยง

หากต้องการลิงก์บัญชีผู้ใช้หลายบัญชีกับบัญชีบริการเกม Play บัญชีเดียว ให้สร้างการแมปแบบหนึ่งต่อหลายรายการในตาราง

ข้อมูลประจำตัวของ Google แบบข้ามแพลตฟอร์มโดยใช้ฟีเจอร์ลงชื่อเข้าใช้ด้วย Google

ลงชื่อเข้าใช้ด้วย Google (SiwG) คือโซลูชันด้านข้อมูลประจำตัวหลักของ Google ที่ช่วยให้นักพัฒนาเกมรับข้อมูลโปรไฟล์ของผู้เล่นได้อย่างปลอดภัย ซึ่งได้แก่ ชื่อ อีเมล และรูปโปรไฟล์

ข้อดีที่สำคัญของการลงชื่อเข้าใช้ด้วย Google คือความพร้อมใช้งานในแพลตฟอร์มต่างๆ อย่างกว้างขวาง ซึ่งรวมถึงเว็บ, Android และ iOS โดยมอบประสบการณ์การลงชื่อเข้าใช้ที่รวดเร็ว ปลอดภัย และคุ้นเคย ซึ่งผู้เล่นรู้จักและไว้วางใจอยู่แล้ว

เชื่อมโยงกับฟิลด์ sub ของโทเค็นรหัส Google

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

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

ขั้นตอนการทำงานระดับสูงมีดังนี้

  • ใน Android: เกมจะเริ่มต้น SDK ของบริการเกม Play เพื่อทริกเกอร์การตรวจสอบสิทธิ์โดยอัตโนมัติในอุปกรณ์ Android คุณ กำหนดค่าการผสานรวมบริการเกม Play เวอร์ชัน 2 เพื่อขอ ขอบเขตการลงชื่อเข้าใช้ 3 รายการ ได้แก่ email, profile และ openid ซึ่งเป็นขอบเขตเดียวกันกับที่ SDK มาตรฐานสำหรับการลงชื่อเข้าใช้ด้วย Google ร้องขอ ซึ่งจะช่วยให้คุณ เรียกโทเค็นรหัสที่มีฟิลด์ sub ของผู้เล่นได้
  • ในเว็บและ iOS: เกมของคุณใช้ SDK มาตรฐาน ลงชื่อเข้าใช้ด้วย Google สำหรับเว็บ การลงชื่อเข้าใช้ด้วย Google สำหรับ iOS และ macOS เมื่อผู้ใช้ลงชื่อเข้าใช้ SiwG SDK จะให้โทเค็นรหัสที่มีฟิลด์ sub ของผู้ใช้ด้วย
  • การเชื่อมโยงบัญชี: เนื่องจากผู้ใช้ลงชื่อเข้าใช้ด้วยบัญชี Google เดียวกันในทั้ง 2 แพลตฟอร์ม ฟิลด์ sub ที่คุณได้รับจึงจะเหมือนกัน จากนั้นคุณจะเชื่อมโยงค่า sub นี้กับรหัสผู้ใช้ภายในในโซลูชันข้อมูลประจำตัวได้อย่างมั่นใจ ซึ่งจะช่วยสร้างประสบการณ์ของผู้ใช้ที่เป็นหนึ่งเดียว

การผสานรวมใน Android

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

การติดตั้งใช้งานในระดับสูงเกี่ยวข้องกับสิ่งต่อไปนี้

  1. ตั้งค่ารหัสไคลเอ็นต์ในโปรเจ็กต์แบบรวม: ก่อนที่จะผสานรวม คุณต้องตั้งค่าบริการเกมของ Play ใน Google Play Console เพื่อรับรหัสไคลเอ็นต์ OAuth 2.0

  2. กำหนดค่าบริการเกมของ Play: ก่อนที่จะเริ่ม คุณจะต้องเพิ่มเกมใน Google Play Console และผสานรวมการตรวจสอบสิทธิ์แพลตฟอร์มบริการเกมของ Play กับเกมของคุณก่อน

  3. เพิ่มปุ่มลงชื่อเข้าใช้ด้วย Google: เพิ่มปุ่ม "ลงชื่อเข้าใช้ด้วย Google" ในหน้าลงชื่อเข้าใช้หรือหน้าจอการตั้งค่าผู้ใช้ของเกม ปุ่มนี้จะทําให้ขั้นตอนการลงชื่อเข้าใช้หรือลงชื่อสมัครใช้เริ่มต้นขึ้น เมื่อสร้างปุ่มนี้ เราขอแนะนําให้คุณปฏิบัติตามหลักเกณฑ์การสร้างแบรนด์ของฟีเจอร์ลงชื่อเข้าใช้ด้วย Google ปุ่มควรแสดง "Google" หรือ "ลงชื่อเข้าใช้ด้วย Google" อย่างชัดเจนเป็นอย่างน้อย นอกจากนี้ หลักเกณฑ์ ลิงก์ยังมีชิ้นงาน UX ที่ดาวน์โหลดได้ซึ่งเป็นไปตามข้อกำหนดและสามารถ ใช้ในเกมของคุณได้

  4. ขอรหัสการให้สิทธิ์เซิร์ฟเวอร์ที่มีขอบเขตการลงชื่อเข้าใช้: เมื่อผู้เล่นคลิกปุ่ม เกมจะขอรหัสการให้สิทธิ์เซิร์ฟเวอร์แบบครั้งเดียว ขั้นตอนที่สำคัญที่สุดคือการกำหนดค่าคำขอนี้ให้มีขอบเขตการลงชื่อเข้าใช้ต่อไปนี้ EMAIL, PROFILE และ OPEN_ID

    วิธีกำหนดค่านี้ขึ้นอยู่กับสภาพแวดล้อมในการพัฒนาซอฟต์แวร์ของคุณ ดังนี้

  5. แลกรหัสการให้สิทธิ์และยืนยันโทเค็นรหัสในแบ็กเอนด์: ส่งรหัสการให้สิทธิ์ จากขั้นตอนก่อนหน้าไปยังเซิร์ฟเวอร์แบ็กเอนด์ ในเซิร์ฟเวอร์ ให้ทำตามคำแนะนำขั้นตอนการแลกรหัส OAuth 2.0 มาตรฐานเพื่อแลกรหัสเป็นโทเค็น รหัส โทเค็นเพื่อการเข้าถึง และโทเค็นการรีเฟรช ตามที่อธิบายไว้ในคำแนะนำ คุณต้องยืนยันโทเค็นรหัสในเซิร์ฟเวอร์

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

    • หากค่า sub นี้มีอยู่แล้วในฐานข้อมูล แสดงว่าผู้ใช้ได้ ลิงก์ไว้ก่อนหน้านี้แล้ว ลงชื่อเข้าใช้บัญชีเกมที่เกี่ยวข้อง

    • หากไม่มีค่า sub นี้ คุณจะสร้างบัญชีผู้ใช้ใหม่ในระบบบัญชีของเกมที่เชื่อมโยงกับ sub นี้ หรือลิงก์กับบัญชีผู้ใช้ที่มีอยู่แล้วในระบบบัญชีโดยการจับคู่ข้อมูลผู้ใช้ (เช่น อีเมล) ที่ระบุไว้ในโทเค็นรหัสก็ได้

การผสานรวมบน iOS, เว็บ และแพลตฟอร์มอื่นๆ

ในแพลตฟอร์มอื่นๆ นอกเหนือจาก Android, iOS, เว็บ หรือ PC คุณจะต้องใช้ SDK มาตรฐานสำหรับการลงชื่อเข้าใช้ด้วย Google เป้าหมายจะเหมือนกับขั้นตอนของ Android คือการรับโทเค็นรหัส Google อย่างปลอดภัย ส่งไปยังแบ็กเอนด์ และใช้ฟิลด์ sub เพื่อลิงก์บัญชี

การติดตั้งใช้งานในระดับสูงเกี่ยวข้องกับสิ่งต่อไปนี้

  1. การผสานรวมฝั่งไคลเอ็นต์: ทำตามเอกสารประกอบอย่างเป็นทางการเพื่อผสานรวม SDK การลงชื่อเข้าใช้ด้วย Google สำหรับแพลตฟอร์มของคุณ คำแนะนำเหล่านี้ครอบคลุม ขั้นตอนฝั่งไคลเอ็นต์ทั้งหมด ตั้งแต่การแสดงปุ่มลงชื่อเข้าใช้ด้วย Google ไปจนถึง การเรียกโทเค็นรหัส

  2. ตรรกะแบ็กเอนด์: ส่งโทเค็นรหัส (หรือรหัสการตรวจสอบสิทธิ์) ไปยังแบ็กเอนด์ จากนั้นเซิร์ฟเวอร์จะทำการยืนยันและตรรกะการเชื่อมโยงฟิลด์ sub เดียวกันกับที่อธิบายไว้ในขั้นตอนที่ 4 และ 5 ของส่วน "การผสานรวมใน Android"

เนื่องจากฟิลด์ sub จากขั้นตอนการลงชื่อเข้าใช้ด้วย Google ทั้งหมดนี้เหมือนกับฟิลด์ที่ดึงมาจากขั้นตอนบริการเกมของ Google Play ใน Android (สำหรับบัญชี Google เดียวกัน) กระบวนการนี้จึงลิงก์บัญชีของผู้ใช้ในทุกแพลตฟอร์มได้สำเร็จ