साइन-इन

Play Games Services में साइन इन करने पर, आपको गेमिंग आइडेंटिटी मिलती है. यह Android प्लैटफ़ॉर्म पर गेम खेलने वाले लोगों के लिए, गेमिंग से जुड़ी प्लैटफ़ॉर्म-लेवल की आइडेंटिटी होती है. इस आइडेंटिटी से, आपके गेम और गेम खेलने वाले के बीच संबंध बनाने में मदद मिलती है. खिलाड़ी, साइन इन करने के लिए इस पहचान का इस्तेमाल करने के लिए, किसी दूसरे सेंट्रलाइज़्ड सिस्टम के मुकाबले ज़्यादा उत्सुक होते हैं.

इसके अलावा, साइन इन करने पर आपको एक मज़बूत और एक जैसा आइडेंटिफ़ायर मिलता है. इसका इस्तेमाल, क्लाउड सेव सिस्टम की कुंजी के तौर पर किया जा सकता है. क्लाउड सेव की सुविधा का बहुत महत्व है. इसकी मदद से, खिलाड़ी ये काम कर सकते हैं:

  • डिवाइस बदलने या रीसेट करने पर, जहां से छोड़ा था वहीं से शुरू करना
  • गेम को कई डिवाइसों पर खेलना (उदाहरण के लिए, किसी दूसरे फ़ोन या Chromebook पर)
  • गेम को अनइंस्टॉल करके, बाद में फिर से इंस्टॉल करना

अपने क्लाउड सेव करने के समाधान के लिए, Play Games Services की पहचान को पासकोड के तौर पर इस्तेमाल किया जा सकता है. इसके अलावा, सेव किए गए गेम की सेवा का इस्तेमाल भी किया जा सकता है. यह सेवा बिना किसी शुल्क के उपलब्ध है.

Play Games की सेवाएं (PGS), अपने-आप साइन इन होने की सुविधा के साथ काम करती हैं. इसकी मदद से, खिलाड़ियों को आसानी से साइन इन किया जा सकता है. साथ ही, मैन्युअल तरीके से साइन इन करने की सुविधा भी उपलब्ध है. इसमें एक क्लिक की प्रोसेस होती है. इस दस्तावेज़ में, साइन इन करने के इन अलग-अलग तरीकों के बारे में बताया गया है.

साइन इन करने का सुझाया गया तरीका

अपने गेम में खिलाड़ियों को साइन इन कराने के लिए, साइन इन करने के लिए दिए गए इस फ़्लो का इस्तेमाल करें:

  1. अपने गेम के स्टार्टअप सीक्वेंस के दौरान, अपने-आप साइन इन होने की सुविधा का इस्तेमाल करके, प्लेयर को अपने-आप साइन इन कराएं.
  2. अगर अपने-आप साइन इन होने की सुविधा काम नहीं करती और उपयोगकर्ता का डिवाइस ऑनलाइन है, तो मैन्युअल तरीके से साइन इन करने की कोशिश करें.
  3. अगर मैन्युअल साइन इन की सुविधा अस्वीकार की जाती है, तो उपयोगकर्ता की पसंद को याद रखें और मैन्युअल साइन इन का विकल्प फिर से न दिखाएं. हालांकि, डिवाइस के चालू होने पर अपने-आप साइन इन होने की सुविधा को आज़माना जारी रखें.

इसके अलावा, आपको यह पक्का करना होगा कि उपयोगकर्ता आपके गेम में, अपने Play Games की सेवाओं वाले खाते से साइन इन कर पाएं. इसके लिए, आपको एक खास बटन जोड़ना होगा, जो आसानी से ढूंढा जा सके.

अपने-आप साइन इन होने की सुविधा

अपने-आप साइन इन होने की सुविधा की मदद से, उपयोगकर्ता आपके गेम में बिना किसी रुकावट के साइन इन कर सकते हैं. यह सुविधा अपने-आप काम करती है! अगर आपका गेम, उपयोगकर्ता से साइन इन करने का अनुरोध करता है और Google Play Games ऐप्लिकेशन में, अपने-आप साइन इन करने की सेटिंग चालू है, तो आपको उपयोगकर्ता की PGS पहचान से जुड़े क्रेडेंशियल मिलेंगे. साथ ही, उपयोगकर्ता को PGS साइन-इन का अनुभव दिखेगा.

अपने-आप साइन इन होने की सेटिंग को उपयोगकर्ता कंट्रोल कर सकते हैं. उपयोगकर्ताओं के पास यह चुनने का विकल्प होता है कि सभी गेम में अपने-आप साइन इन किया जाए या हर बार उनसे पूछा जाए.

अपने-आप साइन इन होने की सुविधा

मैन्युअल तरीके से साइन इन करना

अगर कोई उपयोगकर्ता गेम में अपने-आप साइन इन नहीं होता है, तो आपके पास उससे मैन्युअल तरीके से साइन इन करने के लिए कहने का विकल्प होता है. उपयोगकर्ता आपके गेम के सबसे ऊपर दिखने वाले डायलॉग बॉक्स में जाकर, एक क्लिक से साइन इन कर सकते हैं.

मैन्युअल तरीके से साइन इन करना

सही साइन-इन अनुभव के लिए, पीजीएस पॉप-अप दिखाने की अनुमति देना

PGS का इस्तेमाल करते समय, उपयोगकर्ताओं को यह पता होना चाहिए कि वे साइन इन हैं. ऐसा करने के लिए, पीजीएस साइन-इन अनुभव दिखाया जाता है.

साइन-इन करने का अनुभव दिखाने के लिए, गेम के शुरू होने के दौरान GamesClient क्लास के setViewForPopups() तरीका को कॉल करें. उपयोगकर्ताओं को सही अनुभव देने के लिए, यह ज़रूरी है.

OAuth के दायरे और पीजीएस

PGS, OAuth सिस्टम पर निर्भर करता है, ताकि उपयोगकर्ता आपके गेम को अपने खाते का ऐक्सेस दे सकें. OAuth स्कोप ऐसी अनुमतियां होती हैं जिनका अनुरोध डेवलपर के तौर पर किया जा सकता है. अगर उपयोगकर्ता इन अनुमतियों को देता है, तो आपका गेम उपयोगकर्ता की ओर से कुछ एपीआई को कॉल कर सकता है. साथ ही, आपको उसके Google खाते के कुछ हिस्सों का ऐक्सेस भी मिल जाता है.

पीजीएस में गेम के लिए एक यूनीक स्कोप (games-lite) होता है. अगर आपका गेम, सेव किए गए गेम की सुविधा का इस्तेमाल करता है, तो यह किसी दूसरे स्कोप (drive.appdata) पर निर्भर करता है. सेव किए गए गेम की सुविधा, उपयोगकर्ता के Google Drive खाते का ऐक्सेस देती है. गेम का डेटा इसी खाते में सेव होता है.

आपका गेम, उपयोगकर्ताओं को बेहतरीन गेमिंग अनुभव देने के लिए, किसी भी दायरे का अनुरोध कर सकता है. आपका गेम, एक बंडल में उन सभी स्कोप का अनुरोध कर सकता है जिनकी उसे ज़रूरत है. इससे, Google खाते के ऐक्सेस के लिए किए जाने वाले अनुरोधों की संख्या कम हो जाती है. हालांकि, इस तरीके में एक बड़ी समस्या है. अगर PGS के लिए तय किए गए स्कोप से ज़्यादा का अनुरोध किया जाता है, तो अपने-आप साइन इन होने की सुविधा काम नहीं करेगी. अपने-आप साइन इन होने की सुविधा, खिलाड़ियों को आपके गेम में साइन इन कराने का सबसे अच्छा तरीका है.

सबसे सही तरीका यह है कि आप इंक्रीमेंटल स्कोप के अनुरोधों का इस्तेमाल करें. आपका गेम, शुरुआती अनुरोध में सिर्फ़ PGS के दायरे के लिए अनुरोध करना चाहिए. साथ ही, ज़्यादा काम के समय में अलग से अन्य दायरों के लिए अनुरोध करना चाहिए.

हर स्कोप के लिए, OAuth ऐक्सेस देने के लिए अलग-अलग स्क्रीन का इस्तेमाल किया जाता है. इससे उपयोगकर्ताओं को यह तय करने में मदद मिलती है कि किन स्कोप को ऐक्सेस दिया जाए. सिर्फ़ PGS स्कोप के साथ अपने-आप साइन इन करने की सुविधा का इस्तेमाल करने पर, उपयोगकर्ताओं को किसी भी OAuth प्रॉम्प्ट के साथ इंटरैक्ट नहीं करना पड़ेगा. इससे, साइन इन करने में आने वाली समस्याएं कम हो जाएंगी.

साइन इन करने के कई तरीके उपलब्ध कराना

PGS, Android प्लैटफ़ॉर्म पर गेम खेलने वाले लोगों को गेमिंग आइडेंटिटी उपलब्ध कराता है. हालांकि, यह ज़रूरी नहीं है कि आपके उपयोगकर्ताओं को सिर्फ़ यह आइडेंटिटी ही दी जाए. खिलाड़ियों को एक ही समय पर, PGS, सोशल नेटवर्क आईडी, और अपने गेम में मौजूद आईडी सिस्टम का इस्तेमाल करके साइन इन कराया जा सकता है. हर सिस्टम, आपके और आपके खिलाड़ियों, दोनों के लिए यूनीक वैल्यू देता है. साथ ही, सभी सिस्टम एक साथ मिलकर Android प्लेयर के लिए बेहतरीन अनुभव दे सकते हैं.

बैकएंड इंटिग्रेशन के लिए, प्लेयर की पहचान को सुरक्षित तरीके से वापस पाना और उसकी पुष्टि करना

आपके पास सर्वर के ऑथराइज़ेशन कोड का अनुरोध करने का विकल्प है. इससे आपके सर्वर को, साइन इन किए हुए खिलाड़ी की अनुमति के साथ, REST API के ज़रिए सीधे Play Games की सेवाओं के सर्वर से बात करने की सुविधा मिलती है. इससे खिलाड़ी के आईडी, प्रोफ़ाइल, और अन्य जानकारी (अगर अनुमति दी गई है, तो दोस्तों की सूची) को सीधे ऐक्सेस किया जा सकता है. अगर आपने अपने बैकएंड में खिलाड़ी आईडी, दोस्त आईडी या इससे जुड़ा कोई अन्य डेटा सेव किया है, तो इन फ़ील्ड को डिवाइस से मैनिप्युलेट किए जाने से बचाने के लिए, इस तरीके का इस्तेमाल करना ज़रूरी है.

इसके अलावा, कुछ पुराने गेम और खिलाड़ियों के लिए, हो सकता है कि Android SDK टूल से खिलाड़ी के लिए दिखाया गया प्लेयर आईडी, उसी गेम में अन्य खिलाड़ियों को दिखने वाले आईडी से अलग हो. यह बात खास तौर पर, दोस्तों की सूची का इस्तेमाल करते समय ज़रूरी है. हालांकि, REST API में दिखाया गया player_id हमेशा एक जैसा होता है और यह हमेशा वही आईडी होता है जो दूसरे खिलाड़ियों को दिखता है.

ज़्यादा जानकारी के लिए, ऑफ़लाइन ऐक्सेस और REST API दस्तावेज़ देखें.

क्लाइंट लागू करना

Android पर साइन इन करने की सुविधा लागू करने का तरीका जानने के लिए, Android गेम में साइन इन करना लेख पढ़ें.