首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >解析:[PFFacebookUtils reauthorizeUser:]回调从不被调用

解析:[PFFacebookUtils reauthorizeUser:]回调从不被调用
EN

Stack Overflow用户
提问于 2014-10-07 16:07:43
回答 1查看 193关注 0票数 0

我正在使用Parse框架进行社会认证。我的应用程序有一个非常简单的方法,可以在Facebook上请求发布许可。

我的问题:我传递给reauthorizeUser的块:永不被调用!

代码语言:javascript
复制
+(void)acquirePublishPermissionsForUser:(DHUser *)user WithCompletion:(void (^) (BOOL succeeded, NSError *error))completion
{
    [PFFacebookUtils reauthorizeUser:user
              withPublishPermissions:@[@"publish_actions"]
                            audience:FBSessionDefaultAudienceFriends
                               block:^(BOOL succeeded, NSError *error) {
                                   completion(succeeded, error);
                               }];
}

这种方法效果很好。在这种情况下,Facebook应用程序打开,并提示许可。一旦点击OK,您将返回到我的应用程序。openURL和applicationDidBecomeActive都会被调用。

这在我的应用程序代表中:

代码语言:javascript
复制
- (BOOL)application:(UIApplication *)application
            openURL:(NSURL *)url
  sourceApplication:(NSString *)sourceApplication
         annotation:(id)annotation {
    // Handle Facebook authentication
    return [FBAppCall handleOpenURL:url
                  sourceApplication:sourceApplication
                        withSession:[PFFacebookUtils session]];
}


- (void)applicationDidBecomeActive:(UIApplication *)application {
    // Handle Facebook Authentication
    [FBAppCall handleDidBecomeActiveWithSession:[PFFacebookUtils session]];
}

我设置了一个断点来验证:我的块从未被执行过。这真的很重要,因为我想在获得许可后再发到Facebook上。否则就有点没用了。

有什么想法吗?

EN

回答 1

Stack Overflow用户

发布于 2014-10-09 20:42:10

最后,我使用了一个直接的FB调用([FBSession activeSession requestNewPublishPermissions])。

它对我的会话和令牌数据做了一些奇怪的工作,但至少会执行回调。肯定不是真正的解决办法,但也行。

票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/26240459

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档