2014-10-07 3 views
0

Я использую структуру Parse для социальной аутентификации. У моего приложения действительно простой метод, который запрашивает разрешение на публикацию в Facebook.Анализ: [PFFacebookUtils reauthorizeUser:] callback никогда не называется

Моя проблема: Блок, который я перехожу в reauthorizeUser: никогда не называется!

+(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 вызывается.

Это в моем приложении делегат:

- (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 после получения разрешения. В противном случае это бесполезно.

Любые идеи?

ответ

0

Я закончил использовать прямой вызов FB-API ([FBSession activeSession] requestNewPublishPermissions]).

Это делает странные вещи с моими данными сеанса и аутентификационными данными, но по крайней мере обратный вызов выполняется. Определенно не настоящее решение, но это будет сделано.

Смежные вопросы