Bắt đầu sử dụng Facebook SDK dành cho iOS

Hướng dẫn này sẽ cho biết cách tích hợp ứng dụng iOS của mình với Facebook thông qua Facebook SDK dành cho iOS.

Kể từ SDK v13.0, bạn phải cung cấp Mã ứng dụng cho tất cả lệnh gọi đến API Đồ thị.

Facebook SDK hỗ trợ:

Trước khi bạn bắt đầu

Bạn sẽ cần:

Bước 1: Thiết lập môi trường phát triển

  1. Trong Xcode, nhấp vào File > Swift Packages > Add Package Dependency (File > Các gói Swift > Thêm phần phụ thuộc gói).
  2. Trong hộp thoại hiện ra, nhập URL kho lưu trữ: https://github.com/facebook/facebook-ios-sdk.
  3. Trong Version (Phiên bản), chọn Up to Next Major (Tùy thuộc vào mục chính tiếp theo) rồi chọn tùy chọn mặc định.
  4. Hoàn thành các lời nhắc để chọn những thư viện mà bạn muốn sử dụng trong dự án của mình.
  5. Nếu bạn muốnThêm Gói này vào dự án của bạn

    Cho phép ứng dụng của bạn dùng các dịch vụ của Facebook

    FacebookCore

    Cho phép người dùng đăng nhập vào ứng dụng của bạn, cũng như để ứng dụng của bạn yêu cầu quyền truy cập dữ liệu

    FacebookLogin

    Cho phép ứng dụng của bạn chia sẻ nội dung trên Facebook

    FacebookShare

    Cho phép người dùng đăng nhập vào ứng dụng của bạn để hỗ trợ hoạt động tương tác và quảng bá các tính năng xã hội

    FacebookGamingServices

Bước 2: Đặt cấu hình dự án

Đặt cấu hình file Info.plist bằng đoạn mã XML chứa dữ liệu về ứng dụng của bạn.

Sau khi bạn tích hợp phương thức Đăng nhập bằng Facebook, hệ thống sẽ tự động ghi và thu thập một số Sự kiện trong ứng dụng cho Trình quản lý sự kiện, trừ khi bạn tắt tính năng Tự động ghi sự kiện trong ứng dụng. Để biết chi tiết về loại thông tin được thu thập và cách tắt tính năng tự động ghi sự kiện trong ứng dụng, hãy xem bài viết Tự động ghi sự kiện trong ứng dụng.

  1. Nhấp chuột phải vào Info.plist rồi chọn Mở dưới dạng ▸ Mã nguồn.
  2. Sao chép và dán đoạn mã XML sau vào phần nội dung của file (<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>FacebookClientToken</key>
    <string>CLIENT-TOKEN</string>
    <key>FacebookDisplayName</key>
    <string>APP-NAME</string>
  3. Trong <array><string> thuộc khóa [CFBundleURLSchemes], hãy thay thế APP-ID bằng ID ứng dụng của bạn.
  4. Trong <string> thuộc khóa FacebookAppID, hãy thay thế APP-ID bằng ID ứng dụng của bạn.
  5. Trong <string> thuộc khóa FacebookClientToken, hãy thay thế CLIENT-TOKEN bằng giá trị trong phần Cài đặt > Nâng cao > Mã ứng dụng trên Bảng điều khiển ứng dụng.
  6. Trong <string> thuộc khóa FacebookDisplayName, hãy thay thế APP-NAME bằng tên ứng dụng của bạn.
  7. Để sử dụng bất kỳ hộp thoại nào của Facebook (ví dụ: Đăng nhập, Chia sẻ, Lời mời cài đặt ứng dụng, v.v.) có thể thực hiện chuyển đổi ứng dụng sang các ứng dụng của Facebook, Info.plist của ứng dụng cũng cần bao gồm:
    <key>LSApplicationQueriesSchemes</key>
    <array>
      <string>fbapi</string>
      <string>fb-messenger-share-api</string>
    </array>

Bạn có thể trực tiếp đặt tính năng tự động thu thập Sự kiện trong ứng dụng thành "true" hoặc "false" bằng cách thêm FacebookAutoLogAppEventsEnabled làm khóa trong Info.plist.

Dự án của bạn sẽ cần có tính năng Chia sẻ chuỗi khóa để quy trình đăng nhập có thể hoạt động trong các ứng dụng Mac Catalyst.
  1. Chọn nút + Capability (+ Tính năng) trên tab Signing & Capabilities (Đăng nhập và tính năng) khi đặt cấu hình đối tượng mục tiêu cho ứng dụng của bạn.
  2. Tìm và chọn tính năng Keychain Sharing (Chia sẻ chuỗi khóa).
  3. Nhớ liệt kê tính năng Keychain Sharing (Chia sẻ chuỗi khóa) cho đối tượng mục tiêu đó.

Bước 3: Kết nối App Delegate

Thay thế mã trong phương thức AppDelegate.swift bằng mã dưới đây. Mã này sẽ khởi tạo SDK khi ứng dụng của bạn chạy, đồng thời cho phép SDK xử lý hoạt động đăng nhập và chia sẻ từ ứng dụng gốc trên Facebook khi bạn thực hiện hành động Đăng nhập hoặc Chia sẻ. Nếu không, người dùng phải đăng nhập vào Facebook để đăng nhập bằng trình duyệt trong ứng dụng.
    
// AppDelegate.swift
import UIKit
import FacebookCore

@UIApplicationMain
class AppDelegate: UIResponder, UIApplicationDelegate {    
    func application(
        _ application: UIApplication,
        didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?
    ) -> Bool {          
        ApplicationDelegate.shared.application(
            application,
            didFinishLaunchingWithOptions: launchOptions
        )

        return true
    }
          
    func application(
        _ app: UIApplication,
        open url: URL,
        options: [UIApplication.OpenURLOptionsKey : Any] = [:]
    ) -> Bool {
        ApplicationDelegate.shared.application(
            app,
            open: url,
            sourceApplication: options[UIApplication.OpenURLOptionsKey.sourceApplication] as? String,
            annotation: options[UIApplication.OpenURLOptionsKey.annotation]
        )
    }  
}

iOS 13 đã chuyển chức năng URL mở sang SceneDelegate. Nếu bạn đang dùng phiên bản iOS 13, vui lòng thêm phương thức dưới đây vào SceneDelegate để các thao tác như đăng nhập hoặc chia sẻ hoạt động như dự định:
// SceneDelegate.swift
import FacebookCore
  ...
func scene(_ scene: UIScene, openURLContexts URLContexts: Set<UIOpenURLContext>) {
    guard let url = URLContexts.first?.url else {
        return
    }

    ApplicationDelegate.shared.application(
        UIApplication.shared,
        open: url,
        sourceApplication: nil,
        annotation: [UIApplication.OpenURLOptionsKey.annotation]
    )
}

Bước 4: Tạo rồi chạy dự án trong Trình mô phỏng

Trong Xcode, hãy chọn trình mô phỏng iOS rồi nhấp vào Chạy. Xcode xây dựng dự án của bạn rồi chạy phiên bản mới nhất của ứng dụng đang chạy trong Trình mô phỏng.

Bước 5: Xem kết quả trong Trình quản lý sự kiện


Trình quản lý sự kiện sẽ hiển thị các sự kiện bạn gửi đến Facebook. Nếu đây là lần đầu tiên bạn khởi chạy ứng dụng của mình bằng mã này, bạn có thể phải đợi ít nhất 20 phút thì các sự kiện mới xuất hiện.
Lưu ý: Các sự kiện có thể mất tối đa 20 phút mới xuất hiện trong bảng điều khiển.

Bước tiếp theo

Để tìm hiểu cách triển khai Sự kiện trong ứng dụng và các sản phẩm khác của Facebook cho ứng dụng của bạn, hãy nhấp vào một trong các nút bên dưới.

Chia sẻ trong iOSThêm phương thức Đăng nhập bằng FacebookThêm Sự kiện trong ứng dụngSử dụng API Đồ thị
Cấu hình nâng cao