Unity गेम में दोस्त

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

शुरू करने से पहले

ज़्यादा जानकारी के लिए, सबसे सही तरीकों के बारे में दिए गए दिशा-निर्देश पढ़ें. इन एपीआई को लागू करने का सबसे सही तरीका है.

दोस्तों की सूची दिखाने की अनुमति दें

दोस्तों को चालू करने के लिए, नीचे दिए गए फ़ंक्शन का इस्तेमाल करें:

  • दोस्तों को देखें: खिलाड़ी के दोस्तों की सूची का ऐक्सेस मांगें, ताकि आप उसके Play Games को जोड़ सकें अपने दोस्तों की सूची में जोड़ दें.

  • खिलाड़ी प्रोफ़ाइल देखें: खिलाड़ी को किसी दूसरे खिलाड़ी की Play Games प्रोफ़ाइल देखने दें. यह है ज़रूरी है, ताकि खिलाड़ी जान सके कि उसके दोस्त कौन हैं और वह दूसरे लोगों से जुड़ सके आपके गेम में मौजूद Play Games के खिलाड़ी. इसे यूज़र इंटरफ़ेस (यूआई) एलिमेंट से जोड़ना होगा, ताकि पॉप-अप ट्रिगर करती है. ज़्यादा जानकारी के लिए, दोस्तों के लिए दिशा-निर्देश देखें.

दोस्तों की सूची देखें

दोस्तों की सूची लोड करने के दो तरीके हैं. इसके लिए, ISocial फ़्रेमवर्क का इस्तेमाल करें या सीधे PlayGamesPlatform से शेयर करें.

ISocial फ़्रेमवर्क के साथ मित्रों को लोड करें

Social.localUser.LoadFriends((success) =>  {
    Debug.Log("Friends loaded OK: " + ok));
    foreach(IUserProfile p in Social.localUser.friends) {
         Debug.Log(p.userName + " is a friend");
    }

हालांकि, अगर मौजूदा प्लेयर ने अब तक अनुमति नहीं दी है, तो यह कॉल रद्द हो जाएगा गेम को यह जानकारी ऐक्सेस करने की अनुमति दें. इस्तेमाल की जाने वाली चीज़ें GetLastLoadFriendsStatus यह जांचने के लिए कि LoadFriends मौजूद न होने की वजह से, कार्रवाई पूरी नहीं हो सकी या नहीं सहमति.

 PlayGamesPlatform.Instance.GetLastLoadFriendsStatus((status) => {
    // Check for consent
    if (status == LoadFriendsStatus.ResolutionRequired) {
        // Ask for resolution.
    }
});

गेम के मौजूदा खिलाड़ी को कॉल करके, दोस्तों की सूची शेयर करने के लिए कहा जा सकता है AskForLoadFriendsResolution.

PlayGamesPlatform.Instance.AskForLoadFriendsResolution((result) => {
    if (result == UIStatus.Valid) {
        // User agreed to share friends with the game. Reload friends.
    } else {
        // User doesn’t agree to share the friends list.
    }
});

यह फ़ंक्शन, प्लैटफ़ॉर्म के हिसाब से दोस्तों को शेयर करने वाला यूज़र इंटरफ़ेस (यूआई) दिखाएगा. इस यूज़र इंटरफ़ेस (यूआई) में, खिलाड़ी से पूछा जाता है कि क्या वह अपने दोस्तों को गेम के साथ शेयर करना चाहता है.

PlayGamesPlatform के ज़रिए दोस्तों को लोड करें

दोस्तों को लोड करने का एक और तरीका LoadFriends और LoadMoreFriends का इस्तेमाल करना है:

PlayGamesPlatform.Instance.LoadFriends(pageSize, forceReload, (status) => {
    // Check if the call is successful and if there are more friends to load.
});

PlayGamesPlatform.Instance.LoadMoreFriends(pageSize, (status) => {
    // Check if there are more friends to load.
});

pageSize पैरामीटर, इस पेज के लिए अनुरोध की जाने वाली एंट्री की संख्या बताता है. ध्यान दें कि अगर कैश मेमोरी में सेव किया गया डेटा पहले से मौजूद है, तो लौटाए गए बफ़र में ज़्यादा डेटा हो सकता है . बफ़र में कम से कम इतनी एंट्री ज़रूर शामिल होती हैं का इस्तेमाल करें. अगर forceReload को true पर सेट किया जाता है, तो इस कॉल में, डिवाइस में मौजूद सभी कैश मेमोरी में सेव किए गए डेटा को मिटा दिया जाएगा और सबसे नए डेटा को फ़ेच करने की कोशिश की जाएगी सर्वर से डेटा इकट्ठा करने की सुविधा मिलती है. आम तौर पर, इसका इस्तेमाल इन कार्रवाइयों के लिए किया जाएगा: रीफ़्रेश करना शुरू किया गया. आम तौर पर, वैल्यू पाने के लिए इसे false पर सेट किया जाना चाहिए डेटा कैश करने के फ़ायदे मिलते हैं.

अगर कॉलबैक LoadFriendsStatus.LoadMore दिखाता है, तो अन्य वैल्यू भी होती हैं लोड करने के लिए दोस्त. LoadFriendsStatus.ResolutionRequired से पता चलता है कि उपयोगकर्ता ने मित्रों की सूची शेयर नहीं की है और आप सीधे कॉल कर सकते है PlayGamesPlatform.Instance.AskForLoadFriendsResolution.

तय करें कि दोस्तों की सूची किसको दिखे

PlayGamesPlatform.Instance.GetFriendsListVisibility का इस्तेमाल करके देखें कि उपयोगकर्ता ने गेम के साथ दोस्तों की सूची शेयर की है. सामान लौटाने के संभावित स्टेटस ये हैं:

  • FriendsListVisibilityStatus.RequestRequired का मतलब है कि आपको ये अनुमतियां चाहिए सहमति.

  • FriendsListVisibilityStatus.Visible से पता चलता है कि दोस्तों की सूची लोड की जा रही है सफल होना चाहिए.

  • आम तौर पर, FriendsListVisibilityStatus.Unknown नहीं होता है. आप सेट कर सकते हैं डेटा को रीफ़्रेश करने के लिए, forceReload को 'सही' पर सेट करें.

PlayGamesPlatform.Instance.GetFriendsListVisibility(forceReload, (friendsListVisibilityStatus) => {});

खिलाड़ी की प्रोफ़ाइल देखना

किसी खिलाड़ी को दोस्त के तौर पर जोड़ने या हटाने के लिए, शो का इस्तेमाल करें और प्रोफ़ाइल की तुलना करें फ़ंक्शन का इस्तेमाल करना होगा. यह फ़ंक्शन, बॉटम शीट का डायलॉग ट्रिगर करता है. इस डायलॉग बॉक्स में Play Games दिखाया जाता है उपयोगकर्ता की प्रोफ़ाइल; अनुरोध किए गए के प्लेयर आईडी के साथ फ़ंक्शन को कॉल करें प्लेयर. अगर खिलाड़ी और दोस्त के पास गेम में निकनेम हैं, तो उनका इस्तेमाल गेम में प्रोफ़ाइल के यूज़र इंटरफ़ेस (यूआई) में ज़्यादा जानकारी जोड़ें:

PlayGamesPlatform.Instance.ShowCompareProfileWithAlternativeNameHintsUI(
    mFirstFriendId, /* otherPlayerInGameName= */ null, /* currentPlayerInGameName= */ null,
    (result) => {
        // Profile comparison view has closed.
});