Swift 3和Facebook Swift SDK

3
我一直在尝试理解如何在我创建的应用程序中集成Facebook SDK for Swift。我已经使用了CocoaPods:

pod 'FacebookCore'

pod 'FacebookShare'

https://github.com/facebook/facebook-sdk-swift

我正在使用Swift 3编写我的应用程序,我希望我的用户能够在他们的新闻源上发布带有标签和应用程序徽标的消息(内容),并且还可以使用标签和消息(内容)与应用程序中拍摄的图片进行分享。(所有这些都不需要Facebook登录框架)
我已阅读了Facebook SDK Swift和Facebook IOS SDK的文档。

https://developers.facebook.com/docs/swift

https://developers.facebook.com/docs/ios/getting-started

然而,我不确定是否应该按照Facebook IOS文档中显示的第一步(添加到info.plist等)来实现Facebook和我的应用程序之间的连接以便能够发布内容。这是因为在Facebook Swift文档中没有提及它。它只说要安装框架,就这样。
我想知道是否有人知道我应该怎么做?有没有视频教程或逐步教程?(分享Facebook内容)
(我找到的所有教程都是年初(过时的),只显示登录设置(不可用于Swift)。还显示旧方法使用Import Social、SLComposeViewController,不再起作用,只适用于Twitter。)
谢谢。
PS。 我已经在我的应用程序中链接了框架和库。 并且也收到以下警告: ld: 警告:未找到选项“-F/Users/Siles/Desktop/PartyTime/build/Debug-iphoneos/FBSDKCoreKit”的目录 ld: 警告:未找到选项“-F/Users/Siles/Desktop/PartyTime/build/Debug-iphoneos/FBSDKShareKit”的目录
1个回答

0

6 7 8 9 10 11 12 平台:ios,'9.0'

目标'FBSwiftLogin' do use_frameworks!

#用于FBSwiftLogin的Pods

pod 'FacebookCore'
pod 'FacebookLogin'
pod 'FacebookShare'

结束

导入 FBSDKLoginKit

@UIApplicationMain class AppDelegate: UIResponder, UIApplicationDelegate {

var window: UIWindow?


func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool {
    return FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
}

func applicationWillResignActive(_ application: UIApplication) {
    FBSDKAppEvents.activateApp()
}

func application(_ application: UIApplication, open url: URL, sourceApplication: String?, annotation: Any) -> Bool {
    return FBSDKApplicationDelegate.sharedInstance().application(application, open: url, sourceApplication: sourceApplication, annotation: annotation)
}

}

ViewController.swift

导入 UIKit 导入 FBSDKLoginKit

类 ViewController: UIViewController {

var dict : [String : AnyObject]!

override func viewDidLoad() {
    super.viewDidLoad()
}

override func didReceiveMemoryWarning() {
    super.didReceiveMemoryWarning()
}

@IBAction func btnFBLoginPressed(_ sender: AnyObject) {
    let fbLoginManager : FBSDKLoginManager = FBSDKLoginManager()
    fbLoginManager.logIn(withReadPermissions: ["email"], from: self) { (result, error) in
        if (error == nil){
            let fbloginresult : FBSDKLoginManagerLoginResult = result!
            if fbloginresult.grantedPermissions != nil {
                if(fbloginresult.grantedPermissions.contains("email"))
                {
                    self.getFBUserData()
                    fbLoginManager.logOut()
                }
            }
        }
    }
}

func getFBUserData(){
    if((FBSDKAccessToken.current()) != nil){
        FBSDKGraphRequest(graphPath: "me", parameters: ["fields": "id, name, first_name, last_name, picture.type(large), email"]).start(completionHandler: { (connection, result, error) -> Void in
            if (error == nil){
                self.dict = result as! [String : AnyObject]
                print(result!)
                print(self.dict)
            }
        })
    }
}

}


网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接