步骤1:安装SDK
您可以手动安装SDK或通过CocoaPods。强烈建议使用后一种方法。
将这些行放在Podfile:
target 'MyApp' do use_frameworks! pod 'FBSDKCoreKit' pod 'FBSDKLoginKit' pod 'FBSDKShareKit' end
运行pod install在终端和开放.xcworkspace,而不是.xcodeproj事后。
FBSDKLoginKit和FBSDKShareKit是可选的。您可能需要也可能不需要。
步骤2:在Facebook上创建应用
转到快速入门-开发人员Facebook创建一个应用程序。
创建应用后,Facebook会要求您下载SDK。如果您已经通过CocoaPods安装了SDK,则可以跳过此部分。
步骤3:编辑 .plist
一种。为了使您的应用程序能够与Facebook“通信”,您需要在.plist文件中进行一些设置。Facebook将在“快速入门”页面上为您提供自定义的代码段。
b。编辑.plist文件作为源代码。
C。将您的自定义代码段粘贴到源代码中。小心!该代码段必须完全是<dict>标记的子代。您的源代码应类似于:
<plist version="1.0">
<dict>
// ...
//一些默认设置
// ...
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fb{FBAppId}</string>
</array>
</dict>
</array>
<key>FacebookAppID</key>
<string>{FBAppId}</string>
<key>FacebookDisplayName</key>
<string>{FBAppName}</string>
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
</array>
<key>NSAppTransportSecurity</key>
<dict>
<key>NSExceptionDomains</key>
<dict>
<key>facebook.com</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
<key>fbcdn.net</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
<key>akamaihd.net</key>
<dict>
<key>NSIncludesSubdomains</key>
<true/>
<key>NSExceptionRequiresForwardSecrecy</key>
<false/>
</dict>
</dict>
</dict>
</plist>如果将代码段粘贴到错误的位置,则会遇到问题。
步骤4:在“快速入门”页面上告诉Facebook您的捆绑包标识符。
=>如何获取捆绑包标识符
第5步:修改您的 AppDelegate.swift
一种。
import FBSDKCoreKit
b。
func application(application: UIApplication, didFinishLaunchingWithOptions launchOptions: [NSObject: AnyObject]?) -> Bool {
FBSDKApplicationDelegate.sharedInstance().application(application, didFinishLaunchingWithOptions: launchOptions)
return true
}
func application(application: UIApplication, openURL url: NSURL, sourceApplication: String?, annotation: AnyObject) -> Bool {
return FBSDKApplicationDelegate.sharedInstance().application(application, openURL: url, sourceApplication: sourceApplication, annotation: annotation)
}