2011-08-04 17 views
5

Oyun merkezi başarıları ile ilgili bir sorunuz var. Bir başarının adını/açıklamasını tanımlayıcısı ile almak mümkün mü? Her tanımlayıcının karşılık gelen isimle kodlamasını engellemeye çalışıyorum, bu yüzden ismini alabilecek bir çözüm var mı? teşekkürler, SamiOyunun başarıya ulaşması tanım tarafından elde ediliyor

cevap

10

Tabii ki, bu yüzden iTunes Connect içindeki başarılar için (ayrıca skor tablolarının yanı sıra) yerelleştirme desteğiniz de tam olarak budur. Bununla birlikte, Game Center'a, kimliğine dayalı tek bir başarı için yerelleştirilmiş bilgi hakkında bilgi vermenin bir yolu yoktur. Bunun yerine, anahtarların başarı kimlikleri olduğu bir sözlük içine koymak ve bu sözlüğünden uygun bir GKAchievementDescription nesnesini seçmek için size bir dizi GKAchievementDescription nesnesi veren tüm başarılar hakkında bilgi istersiniz.

NSMutableDictionary *achievementDescriptions = [[NSMutableDictionary alloc] init]; 
[GKAchievementDescription loadAchievementDescriptionsWithCompletionHandler:^(NSArray *descriptions, NSError *error) { 
    if (error != nil) { 
     NSLog(@"Error getting achievement descriptions: %@", error); 
    } 
    for (GKAchievementDescription *achievementDescription in descriptions) { 
     [achievementDescriptions setObject:achievementDescription forKey:achievementDescription.identifier]; 
    } 
}]; 

Ve sonra bazı başarı için bilgi görüntülemek istediğinizde:

GKAchievementDescription *achievementDescription = [achievementDescriptions objectForKey:currentAchievement.identifier]; 

Bu nesne size puan ulaşılabilir ve başarılmamış edilir yanı sıra numarası için yerelleştirilmiş bir başlık, açıklama verir o iTunes Connect'te belirttiğiniz ödüller ve bir görüntü.

+0

Tam olarak neye ihtiyacım vardı. Çok teşekkürler – Sami

+0

İnanılmaz uygun; teşekkür ederim! Bu, esas olarak SDK'da bariz bir ihmal olduğunu düşündüğüm şeyleri yayar. – iisystems

İlgili konular