以前,必须实现AppDelegate.swift中的openURL.但是,Facebook的Swift教程并没有涉及这一部分.
记录以下内容:
应用程序的实现:openURL:sourceApplication:annotation:not found.请将处理程序添加到App Delegate中.课程:ShoppIE.AppDelegate
但我的实现不起作用:
func application(_ app: UIApplication,open url: URL,options: [UIApplicationopenURLOptionsKey : Any] = [:]) -> Bool { return GIDSignIn.sharedInstance().handle(url as URL!,sourceApplication: options[UIApplicationopenURLOptionsKey.sourceApplication] as! String,annotation: nil) if (url.scheme?.hasPrefix("fb"))! { return FBSDKApplicationDelegate.sharedInstance().application(app,open: url,sourceApplication: options[UIApplicationopenURLOptionsKey.sourceApplication] as! String!,annotation: nil) } else { return GIDSignIn.sharedInstance().handle(url as URL!,annotation: nil) } return false}
由于:
Use of unresolved IDentifIEr 'FBSDKApplicationDelegate'
我通过在Podfile中添加以下内容来安装Swift SDK:
pod 'FacebookCore'pod 'FacebookLogin'pod 'FacebookShare'
并运行pod安装.
我找不到更新的代码应该是什么.
解决方法 他们的文档有点缺乏,但他们确实在他们的github存储库中提供了一个很好的示例应用程序.见 https://github.com/facebook/facebook-sdk-swift/blob/master/Samples/Catalog/Sources/AppDelegate.swift这是我用来将SDK插入我的应用程序的代码(Swift 3):
import FacebookCore@UIApplicationMainclass AppDelegate: UIResponder,UIApplicationDelegate { func application(_ application: UIApplication,dIDFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { SDKApplicationDelegate.shared.application(application,dIDFinishLaunchingWithOptions: launchOptions) return true } func application(_ application: UIApplication,sourceApplication: String?,annotation: Any) -> Bool { if let _ = Bundle.main.object(forInfoDictionaryKey: "FacebookAppID") as? String { return SDKApplicationDelegate.shared.application(application,sourceApplication: sourceApplication,annotation: annotation) } return false } @available(iOS 9.0,*) func application(_ application: UIApplication,options: [UIApplicationopenURLOptionsKey : Any]) -> Bool { if let _ = Bundle.main.object(forInfoDictionaryKey: "FacebookAppID") as? String { return SDKApplicationDelegate.shared.application(application,options: options) } return false }}
仅供参考 – facebook swift库基本上只是其标准objective-c库的包装器.
总结以上是内存溢出为你收集整理的ios – 使用Swift SDK处理Facebook登录的开放网址全部内容,希望文章能够帮你解决ios – 使用Swift SDK处理Facebook登录的开放网址所遇到的程序开发问题。
如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。
欢迎分享,转载请注明来源:内存溢出
评论列表(0条)