Facebook sdk 集成
1、设置开发环境
以下过程为在 Xcode 中使用 Swift 软件包管理工具设置开发环境。
- 在 Xcode 中,点击 File(文件)> Add Package...(添加软件包...)。
- 在出现的搜索栏中,输入存储库网址:https://github.com/facebook/facebook-ios-sdk。
- 在 Dependency Rule(依赖项规则)中,选择 Up to Next Major Version(直到下一个重大版本),然后输入最近的版本。以下网站列有最新发布的版本:https://github.com/facebook/facebook-ios-sdk/releases/
- 请选择要使用的库以及要将这些库添加到哪些目标中。
- 点击 Add Package(添加软件包)以完成设置。
2、按照提示修改Info.plist
配置你的 info.plist 和项目设置
在 Xcode 项目的“Supporting Files”文件夹中找到.plist文件。
1.右击你的.plist文件,选择“作为源代码打开”。
2.把 XML 片段复制粘贴到文件正文中(<dict>...</dict>)。
<key>CFBundleURLTypes</key>
<array>
<dict>
<key>CFBundleURLSchemes</key>
<array>
<string>fbapp-ID</string>
</array>
</dict>
</array>
<key>FacebookAppID</key>
<string>APP-ID</string>
<key>FacebookDisplayName</key>
<string>NAME</string>
3.如果你使用任何 Facebook 对话框(例如:登录、分享、应用邀请等),以便从你的应用切换到 Facebook 应用,那么应用的.plist还必须处理以下代码。
<key>LSApplicationQueriesSchemes</key>
<array>
<string>fbapi</string>
<string>fb-messenger-api</string>
<string>fbauth2</string>
<string>fbshareextension</string>
</array>
4.在版本设置中添加编译器标记,以便与 iOS 版 Facebook SDK兼容。
1.前往 Xcode 中的 Project Navigator 并选择项目,即可查看项目设置。
2.选择Other Linker Flags进行编辑。
3.为所有构建目标,把标记-ObjC添加到Other Linker Flags。
提供你的 Bundle ID
Find your bundle Identifier in your Xcode Project's iOS Application Target.
追踪应用安装量和应用打开次数
通过应用事件,你可以衡量移动应用广告促成的安装量,创建高价值目标受众,查看用户人口统计等分析数据。要记录应用启用事件,请先导入AppDelegate.m文件中的 Facebook SDK:
#import <FBSDKCoreKit/FBSDKCoreKit.h>
下一步,把以下内容添加到你的应用委托:
- (void)applicationDidBecomeActive:(UIApplication *)application {
[FBSDKAppEvents activateApp];
}
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {
[[FBSDKApplicationDelegate sharedInstance] application:application
didFinishLaunchingWithOptions:launchOptions];
return YES;
}
- (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation {
return [[FBSDKApplicationDelegate sharedInstance] application:application
openURL:url
sourceApplication:sourceApplication
annotation:annotation];
测试一下你的集成吧 (仅登录这样测试,AppEvents可以在事件测试工具里实时测试)
在应用的其中一个ViewController.m文件中添加:
下一步,把以下代码添加到**viewDidLoad**方法中:
FBSDKLoginButton *loginButton = [[FBSDKLoginButton alloc] init];
loginButton.center = self.view.center;
[self.view addSubview:loginButton];
如果你还未执行这一步,请把以下内容添加到应用的**AppDelegate.m**文件中:
#import <FBSDKCoreKit/FBSDKCoreKit.h>
- (BOOL)application:(UIApplication *)application
openURL:(NSURL *)url
sourceApplication:(NSString *)sourceApplication
annotation:(id)annotation {
return [[FBSDKApplicationDelegate sharedInstance] application:application
openURL:url
sourceApplication:sourceApplication
annotation:annotation];
}
请编译并运行应用。你应该可以看到 Facebook 登录按钮。如果你可以登录应用,就表示集成设置成功了。
生成开发者app专用共享密钥 (用于自动记录购买订阅事件)