我正在尝试发送FB请求,但是FBWebDialog呈现了一个我以前从未见过的UI。我不确定我做错了什么。我检查了通常的嫌疑人:
我用来发送请求的代码:
- (void)sendRequest {
NSError *error;
NSData *jsonData = [NSJSONSerialization
dataWithJSONObject:@{
@"social_karma": @"5",
@"badge_of_awesomeness": @"1",
@"request_action": @"1"}
options:0
error:&error];
if (!jsonData) {
NSLog(@"JSON error: %@", error);
return;
}
NSString *giftStr = [[NSString alloc]
initWithData:jsonData
encoding:NSUTF8StringEncoding];
NSMutableDictionary* params = [@{@"data" : giftStr} mutableCopy];
// Display the requests dialog
[FBWebDialogs
presentRequestsDialogModallyWithSession:nil
message:@"Please send me some Energy!"
title:nil
parameters:params
handler:^(FBWebDialogResult result, NSURL *resultURL, NSError *error) {
if (error) {
// Error launching the dialog or sending the request.
NSLog(@"Error sending request.");
} else {
if (result == FBWebDialogResultDialogNotCompleted) {
// User clicked the "x" icon
NSLog(@"User canceled request.");
} else {
// Handle the send request callback
NSDictionary *urlParams = [self parseURLParams:[resultURL query]];
if (![urlParams valueForKey:@"request"]) {
// User clicked the Cancel button
NSLog(@"User canceled request.");
} else {
// User clicked the Send button
NSString *requestID = [urlParams valueForKey:@"request"];
NSLog(@"Request ID: %@", requestID);
}
}
}
}];
}
我看到的用户界面:
相同的用户界面,滚动到底部:
我希望看到的UI(使用FB Sample应用程序的相同设备):
答案 0 :(得分:3)
找到答案.. Facebook正在使用基于正在发送的用户代理的不同UI进行响应。我正在使用的代码修改了用户代理,为服务器添加了一些额外的信息。一旦我重置了用户代理,就会显示常用的Facebook用户界面。