我通过在游戏发布时初始化然后发布消息,首先检查会话有效性并在需要时触发登录,从我们的Unity iOS游戏成功发布到Facebook。
首次通话时,我从Facebook应用程序授权游戏。 尝试再次启动该过程,我转到Facebook应用程序首选项并删除应用程序授权。
现在当我尝试再次发布游戏时,帖子消息完成处理程序没有错误,但帖子没有出现在用户的墙上。
纠正此问题的流程是什么?有没有办法在发布前检查游戏是否已获得授权,如果不是,则要求新的授权? 或者用户决定是否最终,他们需要重新安装应用程序才能重置所有内容?
即使我正在使用Prime31的Unity插件,但我对iOS SDK回答这个问题很感兴趣。
谢谢!
答案 0 :(得分:1)
您将获得一个需要处理的异常。
- (void)request:(FBRequest *)request didFailWithError:(NSError *)error{
NSLog(@"didFailWithError : %@",[error description]);
NSDictionary* userinfo=[error userInfo];
NSString *type=[[userinfo valueForKey:@"error"]valueForKey:@"type"];
if([type isEqualToString:@"OAuthException"]){
NSLog(@"Exception from oauth let's take new token");
[facebook authorize:_permissions delegate:self];
}
}
使用此委托函数来处理异常。