2016-08-24 3 views
0

Facebookやさまざまなクラウドサービス(Dropboxなど)にアプリケーションをリンクしています。私は認証フローの問題に直面しています。Dropbox SDKとFacebook APIのトークンに同じアプリケーションでアクセスする方法

Facebook認証の場合、下記の方法を使用しています。

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options { 

    return [[FBSDKApplicationDelegate sharedInstance] application:app 
                  openURL:url 
               sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey] 
                 annotation:options[UIApplicationOpenURLOptionsAnnotationKey]]; 
} 

Dropboxのリンクでは、認証はドキュメントに従ってこのようになります。

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url 
    sourceApplication:(NSString *)source annotation:(id)annotation { 
    if ([[DBSession sharedSession] handleOpenURL:url]) { 
     if ([[DBSession sharedSession] isLinked]) { 
      NSLog(@"App linked successfully!"); 
      // At this point you can start making API calls 
     } 
     return YES; 
    } 
    // Add whatever other url handling code your app requires here 
    return NO; 
} 

FacebookとDropboxの認証を一緒に使用するにはどうすればよいですか?

答えて

0

DropboxコールのelseでFacebookの電話をかけるだけです。

- (BOOL)application:(UIApplication *)app openURL:(NSURL *)url options:(NSDictionary<NSString*, id> *)options { 
    if ([[DBSession sharedSession] handleOpenURL:url]) { 
     if ([[DBSession sharedSession] isLinked]) { 
      NSLog(@"App linked successfully!"); 
      // At this point you can start making API calls 
     } 
     return YES; 
    } else { 
     return [[FBSDKApplicationDelegate sharedInstance] application:app 
                 openURL:url 
              sourceApplication:options[UIApplicationOpenURLOptionsSourceApplicationKey] 
                annotation:options[UIApplicationOpenURLOptionsAnnotationKey]]; 
    } 
} 

これは、iOS 9以上のアプリケーションデリゲートメソッドを使用することに注意してください。

+0

ありがとうございました。 – WasimSafdar

関連する問題