2012-07-20 12 views
9

जब मैं Group LeaderboardGame Center में उपयोग करता हूं तो क्या मुझे अपने ऐप में आईडी की गणना में "grp" उपसर्ग का उपयोग करने की आवश्यकता है?
दूसरे शब्दों में यदि मैं Group Leaderboard का उपयोग करने के लिए अपना मौजूदा गेम सेट अप करूंगा तो क्या मुझे अपने ऐप में प्रत्येक आईडी में "grp" उपसर्ग जोड़ने की आवश्यकता है?आईओएस गेम सेंटर समूह

उत्तर

7

ठीक है, यह काम करता है। आप मौजूदा लीडरबोर्ड को एप्लिकेशन में किसी भी बदलाव किए बिना समूह में स्थानांतरित कर सकते हैं।

आशा है कि मैं एनडीए नहीं टूटते, इस बारे में कोई जानकारी नहीं मिली, इस लिंक को छोड़कर - http://david-smith.org/blog/2012/06/18/ios-6-nda-cheatsheet/

+0

इसलिए यदि उपलब्धि आईडी testID से grp.testID तक जाती है, तो testID के साथ उपलब्धि सबमिट करना अभी भी काम करता है? क्या आप कृपया मेरे लिए इसकी पुष्टि कर सकते हैं? –

+1

हाय कान डेडोग्लू, मुझे यकीन नहीं है कि मैं आपको स्पष्ट रूप से समझता हूं। मेरी स्थिति में मेरे पास पहले से ही उपलब्धियां थीं, उदाहरण के लिए testID के साथ। तब मैंने अपने लीडरबोर्ड को समूह में रखा और उपलब्धि आईडी को grp.testID में बदल दिया गया और सभी काम जारी रहे। यदि आप पहले से ही समूह में लीडरबोर्ड पर नई उपलब्धि आईडी जोड़ना चाहते हैं, तो मुझे लगता है कि यह संभव है और उपलब्धि आईडी जीआरपी उपसर्ग के साथ होगी। पीएस मेरी अंग्रेजी के लिए खेद है :-) – zakhej

+0

आपको मेरा प्रश्न सही ढंग से मिला है :) और उत्तर पर्याप्त है - मुझे अपने निरंतर को फिर से परिभाषित करने की ज़रूरत नहीं है, धन्यवाद –

2

क्षमा करें अगर मैंने आपके प्रश्न को गलत तरीके से पढ़ा है। लेकिन मुझे विश्वास है कि जवाब हाँ है।

मैं अपने गेम में एक समूह लीडरबोर्ड का उपयोग करता हूं और मैं इस तरह के स्कोर जमा करता हूं।

  #define LeaderboardID @"grp.yourleaderboardname" 

      GKScore *scoreReporter = [[GKScore alloc] initWithCategory:LeaderboardID]; 
      scoreReporter.value = yourscore; 
      [scoreReporter reportScoreWithCompletionHandler:^(NSError *error) { 
       if (error != nil) { 
        NSLog(@"%@", error); 
       } else { 
        NSLog(@"%@", @"Success submitting score"); 
       } 
      }]; 
      [scoreReporter release]; 

पिछले गेम जिन्होंने समूह लीडरबोर्ड का उपयोग नहीं किया था, मेरे लीडरबोर्डआईडी को इस प्रकार परिभाषित किया गया था।

#define LeaderboardID @"com.yourcomapny.yourgame.yourleaderboardname" 

तो मेरा मानना ​​है कि आपको जीआरपी उपसर्ग को शामिल करने के लिए अपनी आईडी को बदलना होगा।

+0

हाय, Tasik, आप जवाब के लिए धन्यवाद, कृपया मेरा उत्तर देखें। – zakhej

1

जवाब हाँ, आप को बदलने के लिए की क्या ज़रूरत है है "जीआरपी।" उपसर्ग।

करते हैं, उदाहरण के लिए, यदि आप एक समूह में एक भी लीडरबोर्ड शब्दों में कहें, कि एकल लीडरबोर्ड मौजूद रहेंगे: यहाँ क्यों zakhej सोचा हो सकता है कि क्यों वह इस सवाल का जवाब मिल गया है। यदि आप अपनी मूल श्रेणी आईडी के साथ स्कोर की रिपोर्ट करना जारी रखते हैं तो आप उन्हें 'सिंगल' का उपयोग करते हुए मूल एकल लीडरबोर्ड में जोड़ देंगे। उपसर्ग उन्हें नए समूह में जोड़ देगा, जो अनिवार्य रूप से आप करना चाहते हैं। संक्षेप में, समूह में लीडरबोर्ड डालने के परिणामस्वरूप दो लीडरबोर्ड होंगे, प्रत्येक को अपनी श्रेणी आईडी के साथ अपडेट किया जा रहा है।

इसलिए ऐसा लगता है कि मूल श्रेणी आईडी काम करना जारी रखेगी, लेकिन फिर आप पुराने सिंगल लीडरबोर्ड को देख रहे हैं। यही कारण है कि आप देख सकते हैं कि कभी-कभी पुरानी श्रेणी आईडी स्कोर स्कोर करता है और कभी-कभी ऐसा नहीं होता है।

इसे समझने में काफी समय लगा, लेकिन ऐप्पल आईट्यून्स कनेक्ट समर्थन ने इसे इस तरह समझाया और यह समझ में आता है। जो खिलाड़ी खेल को अपडेट नहीं करते हैं, वे पुराने लीडरबोर्ड पर स्कोर की रिपोर्ट करना जारी रखेंगे और गेम सेंटर में देखेंगे। जब वे बाद में अपडेट करते हैं तो वे देख सकते हैं कि उनका उच्च स्कोर पिछला एक है जब आप डेवलपर- समूह में लीडरबोर्ड जोड़ते हैं।

इस दस्तावेज़ की योजना बना खेल केंद्र कार्यान्वयन में बहुत उपयोगी है: https://developer.apple.com/library/ios/documentation/LanguagesUtilities/Conceptual/iTunesConnectGameCenter_Guide/iTunesConnectGameCenter_Guide.pdf

संबंधित मुद्दे