ios - appDelegate 方法的问题

标签 ios appdelegate

我尝试在我的项目中设置 VK 身份验证和 FB 身份验证。

要设置 FB 身份验证,我必须使用以下方法

func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {

   return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url, sourceApplication: sourceApplication, annotation: annotation)
}

要使用 VK 身份验证,我必须使用以下方法

func application(app: UIApplication, openURL url: NSURL, options: [String : AnyObject]) -> Bool {

   VKSdk.processOpenURL(url, fromApplication: UIApplicationOpenURLOptionsSourceApplicationKey)

return true

}

问题是,当我添加 VK 时,Auth FB 停止工作。如果我通过调用 VKSdk 来评论方法第二种方法,那么 facebook 工作得很好

最佳答案

在这两种情况下检查 url 方案,两种 url 方案应该有不同的前缀,并在该方案上设置条件以处理这两种情况。 Like for Facebook 方案包含 fb 前缀,后跟 FacebookAppId

   let bundleInforDict:NSDictionary = NSBundle.mainBundle().infoDictionary!

   if((url.scheme.hasPrefix(String(format: "fb%@", (bundleInforDict.objectForKey("FacebookAppID"))! as! String )))) {
        return FBAppCall.handleOpenURL(url, sourceApplication: sourceApplication, withSession: FBSession.activeSession());
    }
    else{
         // Your VK auth work
    }

关于ios - appDelegate 方法的问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34264207/

相关文章:

ios - 如何为 UICollectionView 实现放大/缩小动画

ios - 安装 Firebase pod 错误 Invalid Podfile

ios - 在 ViewControllerB 到 ViewControllerA 之间传递数据,委托(delegate)不会被调用

ios - 无法将值保存到核心数据

ios - 将 Objective-C AppDelegate 类别类转换为 Swift 类

ios - 使用 Swift 解析/FaceBookSDK 崩溃

iOS - 如何以编程方式向 UITableView 添加两行开关?

swift - 如何从应用程序委托(delegate)访问 NSViewController?

ios - 查找当前事件的 View Controller

ios - Root View Controller Swift