You can not select more than 25 topics Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
MyQRCode/MyQrCode/Docs/FACEBOOK_SDK_INTEGRATION_RE...

3.5 KiB

Facebook SDK 集成说明

概述

本项目已成功集成Facebook SDK用于跟踪用户行为和收集应用使用数据。

集成内容

1. 依赖管理

  • 使用Swift Package Manager添加Facebook SDK
  • 包地址:https://github.com/facebook/facebook-ios-sdk
  • 最低版本16.0.0

2. 核心组件

FacebookEventManager

位置:MyQrCode/Utils/FacebookEventManager.swift

主要功能:

  • 初始化Facebook SDK
  • 记录各种应用事件
  • 提供统一的事件跟踪接口

事件类型

  • 应用启动: logAppLaunch()
  • 二维码扫描: logQRCodeScan(type:)
  • 二维码生成: logQRCodeGeneration(type:)
  • 功能使用: logFeatureUsage(feature:)
  • 分享: logShare(contentType:)
  • 购买: logPurchase(amount:currency:)

3. 配置要求

Info.plist配置

<!-- Facebook SDK Configuration -->
<key>FacebookAppID</key>
<string>YOUR_FACEBOOK_APP_ID</string>
<key>FacebookClientToken</key>
<string>YOUR_FACEBOOK_CLIENT_TOKEN</string>
<key>FacebookDisplayName</key>
<string>MyQrCode</string>
<key>FacebookAutoLogAppEventsEnabled</key>
<false/>
<key>FacebookAdvertiserIDCollectionEnabled</key>
<false/>

需要替换的值

  • YOUR_FACEBOOK_APP_ID: 你的Facebook应用ID
  • YOUR_FACEBOOK_CLIENT_TOKEN: 你的Facebook客户端令牌

4. 使用方法

初始化

MyQrCodeApp.swift中自动初始化:

init() {
    // 初始化Facebook SDK
    FacebookEventManager.shared.configure()
}

记录事件

// 记录二维码扫描
FacebookEventManager.shared.logQRCodeScan(type: "QR_CODE")

// 记录二维码生成
FacebookEventManager.shared.logQRCodeGeneration(type: "EMAIL")

// 记录分享
FacebookEventManager.shared.logShare(contentType: "qr_code")

5. 事件跟踪点

自动跟踪

  • 应用启动: 启动页面消失后自动记录
  • 二维码扫描: 扫描成功后自动记录
  • 二维码生成: 创建二维码时自动记录
  • 分享功能: 使用分享功能时自动记录

手动跟踪

可以在任何需要的地方手动调用事件记录方法。

6. 隐私设置

已禁用的功能

  • FacebookAutoLogAppEventsEnabled: false - 禁用自动事件记录
  • FacebookAdvertiserIDCollectionEnabled: false - 禁用广告ID收集

用户控制

  • 所有事件跟踪都通过代码控制
  • 不收集个人身份信息
  • 只跟踪应用功能使用情况

7. 测试和调试

开发环境

  • 使用测试Facebook应用ID
  • 在Facebook开发者控制台查看事件

生产环境

  • 使用正式Facebook应用ID
  • 确保所有配置正确

8. 注意事项

合规性

  • 确保符合GDPR等隐私法规
  • 在隐私政策中说明数据收集
  • 提供用户选择退出的选项

性能

  • 事件记录是异步的,不影响应用性能
  • 网络请求在后台进行

错误处理

  • SDK初始化失败不会影响应用功能
  • 事件记录失败会静默处理

故障排除

常见问题

  1. 编译错误: 检查Facebook SDK是否正确添加
  2. 初始化失败: 验证Info.plist配置
  3. 事件不记录: 检查网络连接和Facebook应用配置

调试步骤

  1. 检查控制台日志
  2. 验证Facebook应用配置
  3. 测试网络连接
  4. 查看Facebook开发者控制台

更新和维护

版本更新

  • 定期更新Facebook SDK到最新版本
  • 关注Facebook开发者博客的更新说明

功能扩展

  • 可以添加更多自定义事件
  • 支持自定义参数和属性
  • 集成Facebook Analytics获取更详细数据