【问题标题】:Facebook Request FBWebDialog UI looks strangeFacebook 请求 FBWebDialog UI 看起来很奇怪
【发布时间】:2013-08-14 05:22:55
【问题描述】:

我正在尝试发送 FB 请求,但 FBWebDialog 呈现了一个我以前从未见过的 UI。我不确定我做错了什么。我检查了通常的嫌疑人:

  • Facebook 应用设置
  • 包标识符
  • FacebookDisplayName
  • FacebookAppID
  • URL 类型、URL 方案

我用来发送请求的代码:

- (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,滚动到底部:

我希望看到的 UI(使用 FB 示例应用的同一设备):

【问题讨论】:

  • 你在使用 facebook.sdk 吗??
  • 我添加了 FacebookSDK.framework,版本 3.7。我的班级也有#import

标签: ios objective-c facebook facebook-requests


【解决方案1】:

找到了答案。Facebook 正在根据正在发送的用户代理使用不同的 UI 进行响应。我正在使用的代码修改了用户代理,为服务器添加了一些额外的信息。一旦我重置了用户代理,就会显示通常的 Facebook UI。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2021-07-02
    • 1970-01-01
    • 2021-03-25
    • 2015-03-20
    • 2011-07-19
    • 2021-12-03
    • 1970-01-01
    相关资源
    最近更新 更多