苹果ios7.1.1美化教程 game center无法使用教程

您现在的位置: >
如何更改iPhone游戏中心GameCenter昵称
&&& 刚在微博上看见有朋友不会修改iPhone游戏中心GameCenter昵称,想到应该有很多朋友都不会,果断写一个教程,希望大家喜欢,谢谢。
&&& iPhone游戏中心GameCenter是固件更新的一个标志,可以让更多的朋友在游戏的时候结识,让同道齐聚一堂。不废话了,下面开始(别忘了,点击图片可以看iPhone 4的高清大图):
点击邮箱名
点击显示帐户
看到编辑昵称了吧
点击名字就可以更改啦
相关文章:iPhone
图解新闻:
最新攻略:
24小时更新:
热门排行本周本月
推荐文章本周本月让我们稍微展望一下,下周会有什么新作出现呢?比如说手游大厂的《劳拉GO》,剩下的就...
针对新产线的推出、产品整代升级和半代升级,苹果都会选择不同的场地来举行发布会。
劳拉GO(Lara Croft GO)》本周四如约上架 AppStore,中国区售价为 30 元,价格虽然有...
不知道有多少锋友为外站的消息刷烂了F5?果然没有让我们失望的是,邀请函终于在我们的...
与桌面电脑相比,移动产品出现蓝屏的概率比较小,不过当这种事发生在你身上时,也是比...
随着 iPhone 6s 和 iPhone 6s Plus 发布时间的临近,坊间目前传出越来越多疑似这两款...
“抢红包”让不少人都看到了其中的商机,这当中有微商、有开发者、有普通用户,当然还...
在目前的iOS 9 Beta版当中,尚未有开发者发现重大安全漏洞,看来苹果对于系统漏洞的修...
近日 Night Light Interactive 发行了旗下恐怖冒险游戏《灵界女孩(Whispering Willow...
今年 E3 展发布会上曝光的手游大厂三大手游之一《劳拉GO(Lara Croft GO)》本周四如...
近日,游戏开发商Calvino Noir在iOS平台当中推出了他们的新作《黑白雨夜(Calvino Noi...
Kongregate 推出的新作《小小土匪(Little Bandits)》是一款玩起来十分有趣的回合对...
《ChaosDragon 混沌战争》是由日本星海社主导的跨媒体策划作品,这个策划包含了 TV 版...
《VICE中国》是一款比较常规化的新闻聚合类应用,用户可以根据自己的喜欢选择不同类别...
我们都知道当下的手游都会自带分享功能,不过《虐虐》这款 APP 却不同,它允许用户创...
除了Apple Music服务之外,苹果收购Beats的目的还少不了耳机。iPhone越来越强大的同时...
让iPhone获得 MagSafe 磁吸式充电功能的方法真的很简单~~16美元就搞定了。
越来越多的配件厂商开始加入到为 Apple Watch 服务的行列,那些说 Apple Watch 不行的...
第三方手表配件陆续上架Apple Store,当然你得先有个表。
对于智能手机厂商来说,氢电池的面世是个好消息,对于苹果来说更是。因为这家成功开发...
使用 iPhone 6 Plus 拍摄照片后发现有模糊现象的小伙伴,现在可以马上去官网查看自己...
这款手写板就是便宜环保,要改进手写板的缺陷的话,价格会相应高很多,还好随着和iOS...
这是一款来自未来的 iPhone 智能底座、扫描仪、打印机,无论是造型还是使用方式和功能...
不能登入game center
,大神快来!!!!!
注册时间 最后登录
在线时间82 小时 UID
主题帖子人气
白苹果, 积分 706, 距离下一级还需 794 积分
如题,,这是什么原因??、、、
大神快来!!!!!!!!
IMG_0132.PNG (98.66 KB, 下载次数: 0)
13:30 上传
小朋友,你还年轻。你走吧。我不想打击你,整个贴吧都是我小号,不信我换个ID跟你说同样的话。
注册时间 最后登录
在线时间82 小时 UID
主题帖子人气
注册时间 最后登录
在线时间82 小时 UID
主题帖子人气
小朋友,你还年轻。你走吧。我不想打击你,整个贴吧都是我小号,不信我换个ID跟你说同样的话。
注册时间 最后登录
在线时间503 小时 UID
主题帖子人气
初步估计你来了icleanerpro把启动项的这个关掉了回楼主赶着毛驴去旅行于8 分钟前发表的: 如题,,这是什么原因??、、、
注册时间 最后登录
在线时间82 小时 UID
主题帖子人气
初步估计你来了icleanerpro把启动项的这个关掉了
已解决,,,,万分感谢。
小朋友,你还年轻。你走吧。我不想打击你,整个贴吧都是我小号,不信我换个ID跟你说同样的话。
注册时间 最后登录
在线时间2404 小时 UID
主题帖子人气
求方法 怎么解决的
注册时间 最后登录
在线时间82 小时 UID
主题帖子人气
求方法 怎么解决的
你有没有icleaner pro这个插件,可能你是把game center启动项的这个关掉了
<p id="rate_557" onmouseover="showTip(this)" tip="助人为乐^_^&人气 + 1
" class="mtn mbn">
助人为乐^_^
小朋友,你还年轻。你走吧。我不想打击你,整个贴吧都是我小号,不信我换个ID跟你说同样的话。
威锋旗下产品
Hi~我是威威!
沪ICP备号-1 丨 深公安网监备案号 5
增值电信业务经营许可证:
Powered by Discuz!查看: 29257|回复: 11
(已经更新教程)完美解决Game Center登录不了问题,6.0.1不再烦恼
ios6。0.1已经发布,很多朋友可能会出现Game Center登录不了问题,游戏一开等一会就出现Game Center登录界面,取消不了,也登录不了,此教程给和我出现样子问题的朋友
一,进行不完美越狱,
第1步:下载RedSn0w 0.9.15b3工具
(Windows - 在管理员模式下运行)
第2步:将你的设备与电脑相连,进入DFU模式DFU模式进入方法,
& && && &首先,必须安装iTunes —— 主要是保证安装了所需的驱动,不过此过程先保持iTunes关闭。
& && && & 通过USB数据线连接iPhone和电脑。确认你的iPhone在开机状态
& && && && &同时按住电源键与HOME键(别告诉我不知道),约3~5秒,机器黑屏,不要松手。
& && && && &同时按住电源键与HOME键7秒,松开电源键,并保持按住HOME键约15秒(最关键步骤)
& && && && & 如果是第一次在这台电脑进入DFU,系统会提示安装驱动程序;否则屏幕仍旧在黑屏状态,这就说明你成功进入DFU模式了。
& && && && && & 顺利完成。
DFU模式关键步骤
& & 1、按住电源键3秒;& & 2、同时按住电源键+Home键10秒;
& & 3、松开电源键,继续按住Home键15秒。
第3步:打开RedSn0w,并确保他在测试你的设备。点击Extras & Select IPSW,并选择你设备的iOS 6.0(大家不要奇怪,我越狱6.0.1,你干嘛选择6.0,其实我也不知道,越狱大神这么说,我们就这样做咯) IPSW。它应该可以成功的识别该版本。
& && && && &第4 步:进入Redsn0w主页面,点击Jailbreak。RedSn0w将开始处理,然后它将让你安装Cyida,同时确保Cydia已选定安装。点击下一步,越狱将完成处理并在你的iPhone上开始。不要关闭RedSn0w。
& && && && & 第5步,一旦越狱完成,你的设备打开回到锁屏状态(不完美越狱完成)(第6步不介绍了 Just boot 我们不需要,)
二. 屏蔽Game Center登录
& && &1, 下载itools& &&&并安装 然后打开软件
& && &2, 通过USB数据线连接iPhone和电脑。确认你的iPhone在开机状态
& && &3, 软件中选择文件系统
& && &4, 软件中选择越狱系统,依次打开Applications文件夹
& && &5, 在Game Center~iphone.app& &和& &GameCenterUIService.app&&后面加_1& &例如: (Game Center~iphone.app_1)
&&6,&&重新启动,OK& && &
从此Game Center不再提醒,桌面的图标也不见了,游戏玩咯
& && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && && &&& 感谢大家支持
感谢楼主分享
必须支持啊,呵呵
头像被屏蔽
提示: 作者被禁止或删除 内容自动屏蔽
学习学习&&不过还是不想升6.01&&
屏蔽不就是有些游戏不能添加好友?
学习学习&&不过还是不想升6.01&&
funglonglong 发表于
屏蔽不就是有些游戏不能添加好友?
玩单机就是
Powered by绿色免费汉化软件之家,用户体验最好的软件下载基地!
当前位置: &
苹果Game Center加好友、网络对战、邀请朋友使用教程
苹果Game Center加好友、网络对战、邀请朋友使用教程
game center是什么?这是苹果手机自带的一个游戏平台,大家可能比较陌生,不知道如何在iPhone game center平台玩游戏或者加好友吧。不过不要紧,下面绿茶小编为大家详细介绍game center、添加好友的方法以及玩游戏!
Game Center是什么?
Game Center(苹果游戏中心)是专为游戏玩家设计的社交网络平台,类似于iTunes中专为歌迷设计的Ping,从核心功能上看基本等同于微软的Xbox Live,当然它仅对IOS用户群。
Game Center简化了兼容游戏中多人对战的配对,另外它不但可以通过成就系统,同时也可以通过积分榜为玩家提供炫耀的资本。借助Game Center,用户可以收发好友请求,可以邀请好友通过互联网参与多人游戏。
除此之外,系统还可以自动为用户寻找游戏玩伴。用户可以在Game Center中看到游戏中的玩家排名和成绩,并且可以借助好友推荐来寻找新游戏。
Game Center怎么添加好友?
1、进入gamecenter后,看到界面下方的工具栏
2、点选&朋友&选项,即可进入我的好友的界面了,点击&添加朋友&
3、进入&交友邀请&的界面,如3图,在上方的收件人栏中输入您要添加的好友的昵称或者邮箱,点击发送便可以啦!pc6小编建议您在填写的时候尽量输入您的好友的邮箱哦,这样比较方便查找的哦~~
4、点击发送之后,您便会向您的好友发送一封邀请信哦~如果您的朋友接受邀请,便会出现在您的好友列表中了。
上一篇文章:
下一篇文章:
网友评论已有0条评论,
热门应用推荐GameCenter 使用指南
招聘信息:
& GameCenter 为单机游戏为主的 iPhone 游戏平台引入了社会化特性,更为将来的网游、多人竞技等游戏打下了基础。下面是 CocoaChina 会员 &ljg420811& 总结的 GameCenter 使用指南,包括 GameCenter 的设置和代码实现。
1.&&& iTunes Connect 设置
&&& 首先,申请一个应用程序,不必提交.目地是为了得到Bundle ID.
&&& 然后设置一下工程中Info.plist的Bundle identifier使之与iTunes Connect中的Bundle ID相同,否则当你尝试登录GameCenter的时候,会提示一个不支持GameCenter的错误.
&&& 申请完毕,打开你刚申请的application,点击Manage Game Center选项.
&&& 进入后点击Enable Game Center使你的Game Center生效.
&&& 接下来就可以设置自己的Leaderboard和Achievements.
2.&&& Leaderboard设置
&&& Leaderboard纵观图如下所示.
&&& 1.sort Order: Leaderboard中的内容是以升序还是降序排列.
&&& 2.Score Format Type:分数的类型.
&&& 3.*Categories:Leaderboard的一个分数榜,这个可以创建多个,比如游戏可以分为Easy,Normal,Hard三个难度,每个难度一个榜.
&&& *设置完成后保存,完成了一个 Leaderboard的设置.我们可以根据需要添加多个 leaderboard.
&&& 4.**Score Format Location: leaderboard支持的语言.
&&& **可以支持多种语言,每支持一种语言,需要完成一个上述操作.
这个时候右下角会出现save change按钮,点击完成leaderboard的设置.
你可以根据需要随时更改你的leaderboard,操作与上述内容类似.
3.&&& Achievements设置
&&& Achievements界面内容比较少,点击左上角的Add New Achievement,打开如下图所示的Achievements创建界面.
&&& Hidden:表示该成就为解锁前玩家是否可见.
&&& Achievement ID:程序通过这个属性来识别成就.
&&& *Achievement Localization:该成就支持的语言.
&&& *Achievement Localization设置如下图所示.
&&& *其中,成就的Image必须是512X512,72DPI的.
一切设置完成后,点击save change按钮即完成一个成就的设置.
4.总体功能
在使用各个功能前,你需要了解一下块函数。传送门:
4.1 对Game Center支持判断
&& 1. - (BOOL) isGameCenterAvailable
&& 3.&&&& Class gcClass = (NSClassFromString(@"GKLocalPlayer"));
&& 4.&&&& NSString *reqSysVer = @"4.1";
&& 5.&&&& NSString *currSysVer = [[UIDevice currentDevice] systemVersion];
&& 6.&&&& BOOL osVersionSupported = ([currSysVer compare:reqSysVer options:NSNumericSearch] != NSOrderedAscending);
&& 8.&&&& return (gcClass && osVersionSupported);
4.2用户登录
&& 1. - (void) authenticateLocalPlayer
&& 3.&&&& [[GKLocalPlayer localPlayer] authenticateWithCompletionHandler:^(NSError *error){
&& 4.&&&&&&&& if (error == nil) {
&& 5.&&&&&&&&&&&& //成功处理
&& 6.&&&&&&&&&&&& NSLog(@"成功");
&& 7.&&&&&&&&&&&& NSLog(@"1--alias--.%@",[GKLocalPlayer localPlayer].alias);
&& 8.&&&&&&&&&&&& NSLog(@"2--authenticated--.%d",[GKLocalPlayer localPlayer].authenticated);
&& 9.&&&&&&&&&&&& NSLog(@"3--isFriend--.%d",[GKLocalPlayer localPlayer].isFriend);
& 10.&&&&&&&&&&&& NSLog(@"4--playerID--.%@",[GKLocalPlayer localPlayer].playerID);
& 11.&&&&&&&&&&&& NSLog(@"5--underage--.%d",[GKLocalPlayer localPlayer].underage);
& 12.&&&&&&&& }else {
& 13.&&&&&&&&&&&& //错误处理
& 14.&&&&&&&&&&&& NSLog(@"失败& %@",error);
& 15.&&&&&&&& }
& 16.&&&& }];
对于开发者来说,Game Center必须经过测试才能上线,没有上线的程序在测试环境中登录时会出现sandbox提示.如图.
4.3用户变更检测
由于4.0以后系统支持多任务,玩家的机器有可能被不同的玩家接触,导致Game Center上的用户发生变化,当发生变化的时候,程序必须在游戏中通知玩家.
&& 1. - (void) registerForAuthenticationNotification
&& 3.&&&& NSNotificationCenter *nc = [NSNotificationCenter defaultCenter];
&& 4.&&&& [nc addObserver:self
&& 5.&&&&&&&&&&& selector:@selector(authenticationChanged)
&& 6.&&&&&&&&&&&&&&& name:GKPlayerAuthenticationDidChangeNotificationName
&& 7.&&&&&&&&&&&&& object:nil];
& 10. - (void) authenticationChanged
& 12.&&&& if ([GKLocalPlayer localPlayer].isAuthenticated)
& 13.&&&& {
& 14.&&&&&&&& ;// Insert code here to handle a successful authentication.
& 15.&&&& }
& 16.&&&& else
& 17.&&&& {
& 18.&&&&&&&& ;// Insert code here to clean up any outstanding Game Center-related classes.
& 19.&&&& }
5.对Leaderboard进行操作
5.1上传一个分数
&& 1. - (void) reportScore: (int64_t) score forCategory: (NSString*) category
&& 3.&&&& GKScore *scoreReporter = [[[GKScore alloc] initWithCategory:category] autorelease];
&& 4.&&&& scoreReporter.value =
&& 6.&&&& [scoreReporter reportScoreWithCompletionHandler:^(NSError *error) {
&& 7.&&&&&&&& if (error != nil)
&& 8.&&&&&&&& {
&& 9.&&&&&&&&&&&& // handle the reporting error
& 10.&&&&&&&&&&&& NSLog(@"上传分数出错.");
& 11.&&&&&&&&&&&& //If your application receives a network error, you should not discard the score.
& 12.&&&&&&&&&&&& //Instead, store the score object and attempt to report the player&s process at
& 13.&&&&&&&&&&&& //a later time.
& 14.&&&&&&&& }else {
& 15.&&&&&&&&&&&& NSLog(@"上传分数成功");
& 16.&&&&&&&& }
& 18.&&&& }];
当上传分数出错的时候,要将上传的分数存储起来,比如将SKScore存入一个NSArray中.等可以上传的时候再次尝试.
5.2下载一个分数
&& 1. //GKScore objects provide the data your application needs to create a custom view.
&& 2. //Your application can use the score object&s playerID to load the player&s alias.
&& 3. //The value property holds the actual value you reported to Game Center. the formattedValue
&& 4. //property provides a string with the score value formatted according to the parameters
&& 5. //you provided in iTunes Connect.
&& 6. - (void) retrieveTopTenScores
&& 8.&&&& GKLeaderboard *leaderboardRequest = [[GKLeaderboard alloc] init];
&& 9.&&&& if (leaderboardRequest != nil)
& 10.&&&& {
& 11.&&&&&&&& leaderboardRequest.playerScope = GKLeaderboardPlayerScopeG
& 12.&&&&&&&& leaderboardRequest.timeScope = GKLeaderboardTimeScopeAllT
& 13.&&&&&&&& leaderboardRequest.range = NSMakeRange(1,10);
& 14.&&&&&&&& leaderboardRequest.category = @"TS_LB";
& 15.&&&&&&&& [leaderboardRequest loadScoresWithCompletionHandler: ^(NSArray *scores, NSError *error) {
& 16.&&&&&&&&&&&& if (error != nil){
& 17.&&&&&&&&&&&&&&&& // handle the error.
& 18.&&&&&&&&&&&&&&&& NSLog(@"下载失败");
& 19.&&&&&&&&&&&& }
& 20.&&&&&&&&&&&& if (scores != nil){
& 21.&&&&&&&&&&&&&&&& // process the score information.
& 22.&&&&&&&&&&&&&&&& NSLog(@"下载成功....");
& 23.&&&&&&&&&&&&&&&& NSArray *tempScore = [NSArray arrayWithArray:leaderboardRequest.scores];
& 24.&&&&&&&&&&&&&&&& for (GKScore *obj in tempScore) {
& 25.&&&&&&&&&&&&&&&&&&&& NSLog(@"&&& playerID&&&&&&&&&&& : %@",obj.playerID);
& 26.&&&&&&&&&&&&&&&&&&&& NSLog(@"&&& category&&&&&&&&&&& : %@",obj.category);
& 27.&&&&&&&&&&&&&&&&&&&& NSLog(@"&&& date&&&&&&&&&&&&&&& : %@",obj.date);
& 28.&&&&&&&&&&&&&&&&&&&& NSLog(@"&&& formattedValue&&& : %@",obj.formattedValue);
& 29.&&&&&&&&&&&&&&&&&&&& NSLog(@"&&& value&&&&&&&&&&&&&&& : %d",obj.value);
& 30.&&&&&&&&&&&&&&&&&&&& NSLog(@"&&& rank&&&&&&&&&&&&&&& : %d",obj.rank);
& 31.&&&&&&&&&&&&&&&&&&&& NSLog(@"**************************************");
& 32.&&&&&&&&&&&&&&&& }
& 33.&&&&&&&&&&&& }
& 34.&&&&&&&& }];
& 35.&&&& }
1)&&& playerScope:表示检索玩家分数范围.
2)&&& timeScope:表示某一段时间内的分数
3)&&& range:表示分数排名的范围
4)&&& category:表示你的Leaderboard的ID.
5.3玩家信息交互
Game Center最重要的一个功能就是玩家交互.所以,必须检索已经登录玩家的好友信息.根据自己的需要做出设置,比如,可以与好友比较分数,或者好友排行榜等.
//检索已登录用户好友列表
&& 1. - (void) retrieveFriends
&& 3.&&&& GKLocalPlayer *lp = [GKLocalPlayer localPlayer];
&& 4.&&&& if (lp.authenticated)
&& 5.&&&& {
&& 6.&&&&&&&& [lp loadFriendsWithCompletionHandler:^(NSArray *friends, NSError *error) {
&& 7.&&&&&&&&&&&& if (error == nil)
&& 8.&&&&&&&&&&&& {
&& 9.&&&&&&&&&&&&&&&& [self loadPlayerData:friends];
& 10.&&&&&&&&&&&& }
& 11.&&&&&&&&&&&& else
& 12.&&&&&&&&&&&& {
& 13.&&&&&&&&&&&&&&&& ;// report an error to the user.
& 14.&&&&&&&&&&&& }
& 15.&&&&&&&& }];
& 16.&&&&&&&&
& 17.&&&& }
上面的friends得到的只是一个身份列表,里面存储的是NSString,想要转换成好友ID,必须调用- (void) loadPlayerData: (NSArray *) identifiers方法,该方法得到的array里面存储的才是GKPlayer对象.如下
&& 2. Whether you received player identifiers by loading the identifiers for the local player&s
&& 3. friends, or from another Game Center class, you must retrieve the details about that player
&& 4. from Game Center.
&& 6. - (void) loadPlayerData: (NSArray *) identifiers
&& 8.&&&& [GKPlayer loadPlayersForIdentifiers:identifiers withCompletionHandler:^(NSArray *players, NSError *error) {
&& 9.&&&&&&&& if (error != nil)
& 10.&&&&&&&& {
& 11.&&&&&&&&&&&& // Handle the error.
& 12.&&&&&&&& }
& 13.&&&&&&&& if (players != nil)
& 14.&&&&&&&& {
& 15.&&&&&&&&&&&& NSLog(@"得到好友的alias成功");
& 16.&&&&&&&&&&&& GKPlayer *friend1 = [players objectAtIndex:0];
& 17.&&&&&&&&&&&& NSLog(@"friedns---alias---%@",friend1.alias);
& 18.&&&&&&&&&&&& NSLog(@"friedns---isFriend---%d",friend1.isFriend);
& 19.&&&&&&&&&&&& NSLog(@"friedns---playerID---%@",friend1.playerID);
& 20.&&&&&&&& }
& 21.&&&& }];
至此,leaderboard功能介绍完毕
6.对Achievement进行操作
& 这一部分内容比较多,而且有的地方有点重复的感觉.
6.1汇报一个成就的进度
& 对于一个玩家可见的成就,你需要尽可能的报告给玩家解锁的进度;对于一个一部完成的成就,则不需要,当玩家的进度达到100%的时候,会自动解锁该成就.
&& 1. - (void) reportAchievementIdentifier: (NSString*) identifier percentComplete: (float) percent
&& 3.&&&& GKAchievement *achievement = [[[GKAchievement alloc] initWithIdentifier: identifier] autorelease];
&& 4.&&&& if (achievement)
&& 5.&&&& {
&& 6.&&&&&&&& achievement.percentComplete =
&& 7.&&&&&&&& [achievement reportAchievementWithCompletionHandler:^(NSError *error)
&& 8.&&&&&&&&& {
&& 9.&&&&&&&&&&&&& if (error != nil)
& 10.&&&&&&&&&&&&& {
& 11.&&&&&&&&&&&&&&&&& //The proper way for your application to handle network errors is retain
& 12.&&&&&&&&&&&&&&&&& //the achievement object (possibly adding it to an array). Then, periodically
& 13.&&&&&&&&&&&&&&&&& //attempt to report the progress until it is successfully reported.
& 14.&&&&&&&&&&&&&&&&& //The GKAchievement class supports the NSCoding protocol to allow your
& 15.&&&&&&&&&&&&&&&&& //application to archive an achie
& 16.&&&&&&&&&&&&&&&&& NSLog(@"报告成就进度失败 ,错误信息为: \n %@",error);
& 17.&&&&&&&&&&&&& }else {
& 18.&&&&&&&&&&&&&&&&& //对用户提示,已经完成XX%进度
& 19.&&&&&&&&&&&&&&&&& NSLog(@"报告成就进度---->成功!");
& 20.&&&&&&&&&&&&&&&&& NSLog(@"&&& completed:%d",pleted);
& 21.&&&&&&&&&&&&&&&&& NSLog(@"&&& hidden:%d",achievement.hidden);
& 22.&&&&&&&&&&&&&&&&& NSLog(@"&&& lastReportedDate:%@",achievement.lastReportedDate);
& 23.&&&&&&&&&&&&&&&&& NSLog(@"&&& percentComplete:%f",achievement.percentComplete);
& 24.&&&&&&&&&&&&&&&&& NSLog(@"&&& identifier:%@",achievement.identifier);
& 25.&&&&&&&&&&&&& }
& 26.&&&&&&&&& }];
& 27.&&&& }
其中该函数的参数中identifier是你成就的ID, percent是该成就完成的百分比
6.2读取一个成就
方法一:得到所有的成就
&& 1. - (void) loadAchievements
&& 3.&&&& NSMutableDictionary *achievementDictionary = [[NSMutableDictionary alloc] init];
&& 4.&&&& [GKAchievement loadAchievementsWithCompletionHandler:^(NSArray *achievements,NSError *error)
&& 5.&&&&& {
&& 6.&&&&&&&&& if (error == nil) {
&& 7.&&&&&&&&&&&&& NSArray *tempArray = [NSArray arrayWithArray:achievements];
&& 8.&&&&&&&&&&&&& for (GKAchievement *tempAchievement in tempArray) {
&& 9.&&&&&&&&&&&&&&&&& [achievementDictionary setObject:tempAchievement forKey:tempAchievement.identifier];
& 10.&&&&&&&&&&&&&&&&& NSLog(@"&&& completed:%d",pleted);
& 11.&&&&&&&&&&&&&&&&& NSLog(@"&&& hidden:%d",tempAchievement.hidden);
& 12.&&&&&&&&&&&&&&&&& NSLog(@"&&& lastReportedDate:%@",tempAchievement.lastReportedDate);
& 13.&&&&&&&&&&&&&&&&& NSLog(@"&&& percentComplete:%f",tempAchievement.percentComplete);
& 14.&&&&&&&&&&&&&&&&& NSLog(@"&&& identifier:%@",tempAchievement.identifier);
& 15.&&&&&&&&&&&&& }
& 16.&&&&&&&&& }
& 17.&&&&& }];
函数中NSArray返回的是你的所有成就ID.
方法二:根据ID获取成就
&& 1. - (GKAchievement*) getAchievementForIdentifier: (NSString*) identifier
&& 3.&&&& NSMutableDictionary *achievementDictionary = [[NSMutableDictionary alloc] init];
&& 4.&&&& GKAchievement *achievement = [achievementDictionary objectForKey:identifier];
&& 5.&&&& if (achievement == nil)
&& 6.&&&& {
&& 7.&&&&&&&& achievement = [[[GKAchievement alloc] initWithIdentifier:identifier] autorelease];
&& 8.&&&&&&&& [achievementDictionary setObject:achievement forKey:achievement.identifier];
&& 9.&&&& }
& 10.&&&& return [[achievement retain] autorelease];
6.3获取成就描述和图片
在自定义界面中,玩家需要一个成就描述,以及该成就的图片,Game Center提供了该功能.当然,你也可以自己在程序中完成,毕竟玩家不可能时刻处于在线状态.
&& 1. - (NSArray*)retrieveAchievmentMetadata
&& 3.&&&& //读取成就的描述
&& 4.&&&& [GKAchievementDescription loadAchievementDescriptionsWithCompletionHandler:
&& 5.&&&&& ^(NSArray *descriptions, NSError *error) {
&& 6.&&&&&&&&& if (error != nil)
&& 7.&&&&&&&&& {
&& 8.&&&&&&&&&&&&& // process the errors
&& 9.&&&&&&&&&&&&& NSLog(@"读取成就说明出错");
& 10.&&&&&&&&& }
& 11.&&&&&&&&& if (descriptions != nil)
& 12.&&&&&&&&& {
& 13.&&&&&&&&&&&&& // use the achievement descriptions.
& 14.&&&&&&&&&&&&& for (GKAchievementDescription *achDescription in descriptions) {
& 15.&&&&&&&&&&&&&&&&& NSLog(@"1..identifier..%@",achDescription.identifier);
& 16.&&&&&&&&&&&&&&&&& NSLog(@"2..achievedDescription..%@",achDescription.achievedDescription);
& 17.&&&&&&&&&&&&&&&&& NSLog(@"3..title..%@",achDescription.title);
& 18.&&&&&&&&&&&&&&&&& NSLog(@"4..unachievedDescription..%@",achDescription.unachievedDescription);
& 19.&&&&&&&&&&&&&&&&& NSLog(@"5............%@",achDescription.image);
& 20.&&&&&&&&&&&&&&&&
& 21.&&&&&&&&&&&&&&&&& //获取成就图片,如果成就未解锁,返回一个大文号
& 22.&&&&&&&&&&&&&&&&& /*
& 23.&&&&&&&&&&&&&&&&& [achDescription loadImageWithCompletionHandler:^(UIImage *image, NSError *error) {
& 24.&&&&&&&&&&&&&&&&&&&&& if (error == nil)
& 25.&&&&&&&&&&&&&&&&&&&&& {
& 26.&&&&&&&&&&&&&&&&&&&&&&&&& // use the loaded image. The image property is also populated with the same image.
& 27.&&&&&&&&&&&&&&&&&&&&&&&&& NSLog(@"成功取得成就的图片");
& 28.&&&&&&&&&&&&&&&&&&&&&&&&& UIImage *aImage =
& 29.&&&&&&&&&&&&&&&&&&&&&&&&& UIImageView *aView = [[UIImageView alloc] initWithImage:aImage];
& 30.&&&&&&&&&&&&&&&&&&&&&&&&& aView.frame = CGRectMake(50, 50, 200, 200);
& 31.&&&&&&&&&&&&&&&&&&&&&&&&& aView.backgroundColor = [UIColor clearColor];
& 32.&&&&&&&&&&&&&&&&&&&&&&&&& [[[CCDirector sharedDirector] openGLView] addSubview:aView];
& 33.&&&&&&&&&&&&&&&&&&&&& }else {
& 34.&&&&&&&&&&&&&&&&&&&&&&&&& NSLog(@"获得成就图片失败");
& 35.&&&&&&&&&&&&&&&&&&&&& }
& 36.&&&&&&&&&&&&&&&&& }];
& 37.&&&&&&&&&&&&&&&&&& */
& 38.&&&&&&&&&&&&& }
& 39.&&&&&&&&& }
& 40.&&&& }];
如果你不主动使用注释中的方法,那么你得到的description中不会有图片,这样可以减少网络的使用,尽量少下载东西.当使用注释中的代码时,如果成就已经解锁,则返回该成就的图标,如果没有解锁,则返回一个大问号,至于未解锁图标是否可以自定义,我找寻的结果好像是不可以.
微信扫一扫
订阅每日移动开发及APP推广热点资讯公众号:CocoaChina
点击量11662点击量6678点击量6593点击量6333点击量6190点击量5388点击量5262点击量5036点击量4768
&2015 Chukong Technologies,Inc.
京公网安备89

我要回帖

更多关于 苹果4s版本7.1.1 的文章

 

随机推荐