我正在 iOS 中开发一个使用 facebook 登录的应用程序。用户可以在应用程序内访问 Facebook 照片。当我向审核团队提交模拟器版本时,它被拒绝,原因如下:
Your Facebook login is not recognizing my test user but is rather presenting me with a preset user. Please make sure that your app can log me in and pull photos from my test user's albums before resubmitting.
请帮我理解上面的说法。
要获取照片,请使用以下代码:
if (![[FBSession activeSession] isOpen])
{
[[FBSession activeSession] openWithCompletionHandler:^(FBSession *session, FBSessionState status, NSError *error) {
[FBRequestConnection startWithGraphPath:@"/me/photos"
completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if (!error){
/*Success*/
}else
{
/*Handle Error*/;
}
}];
}];
}
另一个问题:Facebook 是否有开发者论坛或任何类型的开发者支持?
最佳答案
您只是意外地以测试用户身份登录(这可能是由于 plist、某种 NSUserDefault 或多种原因造成的。在此代码中...
if (![[FBSession activeSession] isOpen])
{
[[FBSession activeSession] openWithCompletionHandler:^(FBSession *session, FBSessionState status, NSError *error) {
[FBRequestConnection startWithGraphPath:@"/me/photos"
completionHandler:^(FBRequestConnection *connection, id result, NSError *error) {
if (!error){
/*Success*/
}else
{
/*Handle Error*/;
}
}];
}];
}
在“成功”处只需添加几行代码,例如..
NSString *emailCheck = [result objectForKey:@"email"];
if ( emailCheck == nil ) NSLog(@"emailCheck woe");
NSLog(@"emailCheck is %@", emailCheck);
同样的
[result objectForKey:@"first_name"];
[result objectForKey:@"last_name"];
一定要构建为分发模式(并测试其他模式),尝试几次看看。
您很快就会找到问题。
一个关键问题:在您的实际设备(即 iPhone)上“注销”Facebook 极其困难。
在测试之前,只需在您的 iPhone 上点击 Facebook.com 即可三重检查您实际登录的身份。
您应该删除 iPhone 上的 Facebook 应用和“控制面板 Facebook 设置”,并仅使用通过网站的“正常”登录方式 - 以消除这些变量。
关于ios - Facebook 审查因使用开放图谱照片而被拒绝,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25757466/