Android गेम के लिए खिलाड़ी के आंकड़े

इस गाइड में, Google Play की गेम सेवाओं के लिए, Player Stats API का इस्तेमाल करने का तरीका बताया गया है. Player Stats API का इस्तेमाल करके, किसी खिलाड़ी की इन-गेम गतिविधि का डेटा पाया जा सकता है.

Player Stats API की मदद से, गेम के अनुभव को खिलाड़ियों के अलग-अलग सेगमेंट और उनकी लाइफ़साइकल के अलग-अलग स्टेज के हिसाब से बेहतर बनाया जा सकता है. खिलाड़ी गेम में कितना प्रोग्रेस कर रहे हैं, कितना खर्च कर रहे हैं, और गेम में उनकी दिलचस्पी कैसी है, इस आधार पर हर सेगमेंट के लिए उनका अनुभव खास बनाया जा सकता है. उदाहरण के लिए, इस एपीआई का इस्तेमाल करके, कम ऐक्टिव खिलाड़ी को अपने गेम में फिर से जुड़ने के लिए प्रोत्साहित किया जा सकता है. जैसे, जब खिलाड़ी की पुष्टि हो जाए, तब उसे गेम में मौजूद नई चीज़ें दिखाई जा सकती हैं और उनका प्रमोशन किया जा सकता है.

इन एपीआई को com.google.android.gms.games.stats और com.google.android.gms.games पैकेज में देखा जा सकता है.

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

Player Stats API का इस्तेमाल शुरू करने से पहले:

Player Stats Client पाना

Player Stats API का इस्तेमाल शुरू करने के लिए, आपके गेम को सबसे पहले PlayerStatsClient ऑब्जेक्ट पाना होगा. इसके लिए, PlayerStatsClient.getPlayersClient() तरीके का इस्तेमाल करें और गतिविधि की जानकारी उपलब्ध कराएं.

The PlayerStatsClient क्लास, Google Play services Task क्लास का इस्तेमाल करके, नतीजे एसिंक्रोनस तरीके से दिखाती है. बैकग्राउंड में किए जाने वाले काम को मैनेज करने के लिए, टास्क इस्तेमाल करने के बारे में ज़्यादा जानना है, तो देखें Tasks API डेवलपर गाइड.

Player Stats की बुनियादी बातें

Player Stats API का इस्तेमाल करके, किसी खिलाड़ी की इन-गेम गतिविधि का डेटा पाया जा सकता है. खिलाड़ी का जो डेटा पाया जा सकता है उसमें ये शामिल हैं:

  • सेशन की औसत अवधि: खिलाड़ी के सेशन की औसत अवधि, मिनटों में. सेशन की अवधि, Google Play की गेम सेवाओं से खिलाड़ी की पुष्टि होने के समय से तय होती है.

  • पिछली बार खेलने के बाद से दिन: खिलाड़ी ने पिछली बार कब खेला था, तब से लेकर अब तक के दिनों की अनुमानित संख्या.

  • खरीदारियों की संख्या: खिलाड़ी की इन-ऐप्लिकेशन खरीदारी की अनुमानित संख्या.

  • सेशन की संख्या: खिलाड़ी के सेशन की अनुमानित संख्या. सेशन की संख्या, Google Play की गेम सेवाओं से खिलाड़ी की पुष्टि होने की संख्या से तय होती है.

  • सेशन पर्सेंटाइल: खिलाड़ी के सेशन पर्सेंटाइल का अनुमान. इसे 0 से 1 के बीच की डेसिमल वैल्यू के तौर पर दिखाया जाता है. इसमें 0 और 1, दोनों शामिल हैं. इस वैल्यू से पता चलता है कि मौजूदा खिलाड़ी ने इस गेम के बाकी खिलाड़ियों की तुलना में कितने सेशन खेले हैं. ज़्यादा संख्याएं बताती हैं कि इस खिलाड़ी ने ज़्यादा सेशन खेले हैं.

  • खर्च पर्सेंटाइल: खिलाड़ी के खर्च पर्सेंटाइल का अनुमान. इसे 0 से 1 के बीच की डेसिमल वैल्यू के तौर पर दिखाया जाता है. इसमें 0 और 1, दोनों शामिल हैं. इस वैल्यू से पता चलता है कि मौजूदा खिलाड़ी ने इस गेम के बाकी खिलाड़ियों की तुलना में कितना खर्च किया है. ज़्यादा संख्याएं बताती हैं कि इस खिलाड़ी ने ज़्यादा खर्च किया है.

खिलाड़ी के डेटा के ये टाइप अब काम नहीं करते. ये हमेशा 'वैल्यू सेट नहीं है' वाला कॉन्स्टेंट दिखाते हैं:

  • चर्न प्रोबैबिलिटी: इस बात का अनुमान कि कोई खिलाड़ी अगले दिन चर्न करेगा या नहीं. इसे 0 (चर्न होने की कम संभावना) से 1 (चर्न होने की ज़्यादा संभावना) के बीच की डेसिमल वैल्यू के तौर पर दिखाया जाता है. इसमें 0 और 1, दोनों शामिल हैं. चर्न का मतलब है सात दिनों तक कोई गतिविधि न होना.
  • स्पेंड प्रोबैबिलिटी: इस बात की अनुमानित संभावना कि खिलाड़ी इस गेम में खर्च करेगा. इसे 0 (खर्च करने की कम संभावना) से 1 (खर्च करने की ज़्यादा संभावना) के बीच की डेसिमल वैल्यू के तौर पर दिखाया जाता है. इसमें 0 और 1, दोनों शामिल हैं.
  • अगले 28 दिनों में कुल खर्च: इस गेम में अगले 28 दिनों में, खिलाड़ी के कुल अनुमानित खर्च की जानकारी.
  • हाई स्पेंडर प्रोबैबिलिटी: इस बात की अनुमानित संभावना कि अगले 28 दिनों में कोई खिलाड़ी, इस गेम के 95वें पर्सेंटाइल या उससे ज़्यादा के खिलाड़ी बेस के बराबर खर्च करेगा. इसे 0 (हाई स्पेंडर बनने की कम संभावना) से 1 (हाई स्पेंडर बनने की ज़्यादा संभावना) के बीच की डेसिमल वैल्यू के तौर पर दिखाया जाता है.

खिलाड़ी के आंकड़ों का डेटा पाना

पुष्टि किए गए खिलाड़ी के आंकड़ों का डेटा पाने के लिए, यह तरीका अपनाएं:

  1. PlayerStatsClient.loadPlayerStats() तरीके का इस्तेमाल करें.

  2. अगर कॉल सही तरीके से होती है, तो Google Play की गेम सेवाएं एक Task ऑब्जेक्ट दिखाती हैं. यह एसिंक्रोनस तरीके से एक PlayerStats ऑब्जेक्ट लोड करता है. अपने ऐप्लिकेशन में, पुष्टि किए गए खिलाड़ी की गतिविधियों का डेटा पाने के लिए, इस ऑब्जेक्ट के तरीकों का इस्तेमाल करें.

यहां एक उदाहरण दिया गया है:

public void checkPlayerStats() {
  PlayGames.getPlayerStatsClient(this)
      .loadPlayerStats(true)
      .addOnCompleteListener(new OnCompleteListener<AnnotatedData<PlayerStats>>() {
        @Override
        public void onComplete(@NonNull Task<AnnotatedData<PlayerStats>> task) {
          if (task.isSuccessful()) {
            // Check for cached data.
            if (task.getResult().isStale()) {
              Log.d(TAG, "using cached data");
            }
            PlayerStats stats = task.getResult().get();
            if (stats != null) {
              Log.d(TAG, "Player stats loaded");
              if (stats.getDaysSinceLastPlayed() > 7) {
                Log.d(TAG, "It's been longer than a week");
              }
              if (stats.getNumberOfSessions() > 1000) {
                Log.d(TAG, "Veteran player");
              }
              if (stats.getChurnProbability() == 1) {
                Log.d(TAG, "Player is at high risk of churn");
              }
            }
          } else {
            int status = CommonStatusCodes.DEVELOPER_ERROR;
            if (task.getException() instanceof ApiException) {
              status = ((ApiException) task.getException()).getStatusCode();
            }
            Log.d(TAG, "Failed to fetch Stats Data status: "
                + status + ": " + task.getException());
          }
        }
      });
}

खिलाड़ी के आंकड़ों के डेटा का इस्तेमाल करने के बारे में सलाह

Play Stats API की मदद से, खिलाड़ियों की दिलचस्पी और खर्च करने के तरीके के आधार पर, अलग-अलग तरह के खिलाड़ियों की पहचान की जा सकती है. साथ ही, उनके गेम के अनुभव को बेहतर बनाने के लिए सही रणनीतियां लागू की जा सकती हैं.

यहां दी गई टेबल में, खिलाड़ी के सेगमेंट के कुछ उदाहरण और दिलचस्पी बढ़ाने के लिए सुझाई गई रणनीतियां दी गई हैं:

खिलाड़ी का सेगमेंट जुड़ाव की रणनीति
ऐसे खिलाड़ी जो अक्सर खेलते हैं. इनके सेशन की संख्या ज़्यादा होती है और स्पेंड पर्सेंटाइल भी अच्छा होता है. हालांकि, इन्होंने पिछले एक हफ़्ते या उससे ज़्यादा समय से नहीं खेला है.
  • इन्हें छूट या खास बोनस के बारे में सूचना भेजें. यह सूचना तब भेजी जा सकती है, जब वे गेम खेलने के लिए वापस आएं.
  • इन्हें 'वापस आने पर स्वागत है' मैसेज दिखाएं. इसमें उनकी शानदार उपलब्धियों के बारे में बताया जा सकता है. साथ ही, उन्हें ऐसा बैज दें जिससे उन्हें फिर से खेलने के लिए बढ़ावा मिले.
ऐसे खिलाड़ी जो गेम में ज़्यादा दिलचस्पी दिखाते हैं, लेकिन इनका स्पेंड पर्सेंटाइल कम होता है.
  • इन्हें बोनस देकर, अपने दोस्तों को आपका गेम इंस्टॉल करने और उसमें शामिल होने के लिए न्योता देने के लिए प्रोत्साहित करें. इस तरीके से, नए खिलाड़ियों को भर्ती करने के लिए, खिलाड़ी की गेम में दिलचस्पी का इस्तेमाल किया जाता है.
ऐसे खिलाड़ी जो ज़्यादा खर्च करते हैं, लेकिन अब वे कम बार खेल रहे हैं.
  • इन्हें बोनस देकर, इनकी दिलचस्पी को फिर से बढ़ाया जा सकता है. जैसे, इन्हें ज़्यादा वैल्यू वाले, कम समय के लिए इस्तेमाल किए जा सकने वाले टूल, हथियार या छूट ऑफ़र की जा सकती हैं.
  • अगली बार जब खिलाड़ी की पुष्टि हो, तो उसे एक वीडियो दिखाएं. इसमें कम्यूनिटी की सुविधाओं के बारे में बताया गया हो. जैसे, कबीले के हमले. इनसे खिलाड़ी ज़्यादा बार और ज़्यादा समय तक गेम में दिलचस्पी दिखाते हैं.
ऐसे खिलाड़ी जिनके स्पेंड प्रोबैबिलिटी की वैल्यू बहुत ज़्यादा या बहुत कम होती है.
  • खर्च करने की संभावना कम: इन्हें विज्ञापन वीडियो देखने का विकल्प दें. इन्हें खरीदारी के लिए कम कीमत वाले आइटम दिखाएं.
  • खर्च करने की संभावना ज़्यादा: इन्हें गेम में मौजूद स्टोर पर ले जाएं और खरीदारी करने के लिए, खास प्रमोशन ऑफ़र करें.