2016-08-24 38 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

相關問題