Thêm Firebase vào dự án Unity

Tăng cường sức mạnh cho các trò chơi Unity bằng SDK Firebase Unity của chúng tôi.

Để cho thấy việc kết nối Firebase với dự án Unity của bạn dễ dàng như thế nào, chúng tôi đã tạo một trò chơi mẫu là MechaHamster. Nếu bạn muốn thử thêm Firebase vào một trò chơi, hãy sử dụng phiên bản khởi đầu có trên GitHub. Nếu bạn muốn xem phiên bản hoàn chỉnh, hãy xem các phiên bản trong App Store hoặc Google Play Store.

MechaHamster (GitHub)

MechaHamster (App Store)

MechaHamster (Cửa hàng Play)


Tìm hiểu thêm thông tin về cách tăng cường sức mạnh cho trò chơi bằng Firebase trên trang trò chơi của Firebase.

Bạn đã thêm Firebase vào dự án Unity của mình chưa? Đảm bảo rằng bạn đang sử dụng phiên bản mới nhất của SDK Firebase Unity.

Điều kiện tiên quyết

  • Cài đặt Unity 2021 LTS trở lên. Chúng tôi coi việc hỗ trợ Unity 2020 là không còn được dùng nữa và sẽ không còn hỗ trợ tích cực sau bản phát hành chính tiếp theo. Các phiên bản cũ hơn cũng có thể tương thích nhưng sẽ không được hỗ trợ tích cực.

  • (Chỉ dành cho nền tảng Apple) Cài đặt những nội dung sau:

    • Xcode 13.3.1 trở lên
    • CocoaPods 1.12.0 trở lên
  • Đảm bảo rằng dự án Unity của bạn đáp ứng các yêu cầu sau:

    • Đối với iOS – nhắm đến iOS 13 trở lên
    • Đối với tvOS – nhắm đến tvOS 13 trở lên
    • Đối với Android – nhắm đến API cấp 21 (Lollipop) trở lên
  • Thiết lập một thiết bị thực hoặc sử dụng trình mô phỏng để chạy ứng dụng.

    • Đối với các nền tảng của Apple – Thiết lập một thiết bị thực hoặc sử dụng trình mô phỏng iOS hoặc tvOS.

      Đối với Cloud Messaging trên iOS hoặc tvOS, bạn cần đáp ứng các điều kiện tiên quyết sau:

      • Thiết lập một thiết bị thực.
      • Lấy Khoá xác thực thông báo đẩy của Apple cho tài khoản Apple Developer của bạn.
      • Bật thông báo đẩy trong XCode trong phần App > Capabilities (Ứng dụng > Chức năng).

    • Đối với AndroidTrình mô phỏng phải sử dụng một hình ảnh trình mô phỏng có Google Play.

Nếu chưa có dự án Unity và chỉ muốn dùng thử một sản phẩm của Firebase, bạn có thể tải một trong các mẫu khởi động nhanh của chúng tôi xuống.

Bước 1: Tạo dự án Firebase

Trước khi có thể thêm Firebase vào dự án Unity, bạn cần tạo một dự án Firebase để kết nối với dự án Unity. Hãy truy cập vào trang Tìm hiểu về các dự án Firebase để tìm hiểu thêm về các dự án Firebase.

  1. Trong bảng điều khiển Firebase, hãy nhấp vào Thêm dự án.

    • Để thêm tài nguyên Firebase vào một dự án Google Cloud hiện có, hãy nhập tên dự án hoặc chọn dự án đó trong trình đơn thả xuống.

    • Để tạo một dự án mới, hãy nhập tên dự án. Bạn cũng có thể tuỳ ý chỉnh sửa mã dự án xuất hiện bên dưới tên dự án.

  2. Nếu được nhắc, hãy xem xét và chấp nhận các điều khoản của Firebase.

  3. Nhấp vào Tiếp tục.

  4. (Không bắt buộc) Thiết lập Google Analytics cho dự án của bạn. Việc này giúp mang lại trải nghiệm tối ưu khi sử dụng các sản phẩm sau đây của Firebase: Firebase A/B Testing, Cloud Messaging, Crashlytics, In-App MessagingRemote Config (bao gồm cả Cá nhân hoá).

    Chọn một tài khoản Google Analytics hiện có hoặc tạo một tài khoản mới. Nếu bạn tạo tài khoản mới, hãy chọn Analyticsvị trí báo cáo, sau đó chấp nhận chế độ chia sẻ dữ liệu và Google Analyticsđiều khoản cho dự án của bạn.

  5. Nhấp vào Tạo dự án (hoặc Thêm Firebase nếu bạn đang thêm Firebase vào một dự án Google Cloud hiện có).

Firebase tự động cung cấp tài nguyên cho dự án Firebase của bạn. Khi quá trình này hoàn tất, bạn sẽ được chuyển đến trang tổng quan về dự án Firebase của mình trong bảng điều khiển Firebase.

Bước 2: Đăng ký ứng dụng của bạn với Firebase

Bạn có thể đăng ký một hoặc nhiều ứng dụng hoặc trò chơi để kết nối với dự án Firebase của mình.

  1. Chuyển đến bảng điều khiển Firebase.

  2. Ở giữa trang tổng quan của dự án, hãy nhấp vào biểu tượng Unity () để chạy quy trình thiết lập.

    Nếu bạn đã thêm một ứng dụng vào dự án Firebase, hãy nhấp vào Thêm ứng dụng để hiển thị các lựa chọn về nền tảng.

  3. Chọn mục tiêu bản dựng mà bạn muốn đăng ký cho dự án Unity của mình, hoặc bạn thậm chí có thể chọn đăng ký cả hai mục tiêu cùng một lúc.

  4. Nhập(các) mã dành riêng cho nền tảng của dự án Unity.

    • Đối với iOS – Nhập mã nhận dạng iOS của dự án Unity vào trường Mã nhận dạng gói iOS.

    • Đối với Android – Nhập mã nhận dạng Android của dự án Unity vào trường Tên gói Android.
      Các thuật ngữ tên góimã ứng dụng thường được dùng thay thế cho nhau.

    Mở dự án Unity trong Unity IDE, sau đó chuyển đến phần cài đặt cho từng nền tảng:

    • Đối với iOS – Chuyển đến phần Build Settings > iOS (Cài đặt bản dựng > iOS).

    • Đối với Android – Chuyển đến phần Android > Player Settings > Other Settings (Android > Cài đặt trình phát > Cài đặt khác).

    Mã nhận dạng dự án Unity của bạn là giá trị Bundle Identifier (Mã nhận dạng gói) (ví dụ: com.yourcompany.yourproject).

  5. (Không bắt buộc) Nhập(các) biệt hiệu dành riêng cho nền tảng của dự án Unity.
    Đây là tên gọi thân mật nội bộ, là các giá trị nhận dạng thuận tiện và chỉ bạn mới thấy được trong bảng điều khiển Firebase.

  6. Nhấp vào Đăng ký ứng dụng.

Bước 3: Thêm tệp cấu hình Firebase

  1. Lấy(các) tệp cấu hình Firebase dành riêng cho nền tảng trong quy trình thiết lập bảng điều khiển Firebase.

    • Đối với iOS – Nhấp vào Tải GoogleService-Info.plist xuống.

    • Đối với Android – Nhấp vào Tải google-services.json xuống.

    • Tệp cấu hình Firebase chứa các giá trị nhận dạng duy nhất nhưng không bí mật của dự án và ứng dụng. Để tìm hiểu thêm về tệp cấu hình này, hãy truy cập vào phần Tìm hiểu về các dự án Firebase.

    • Bạn có thể tải tệp cấu hình Firebase xuống lại bất cứ lúc nào.

    • Đảm bảo rằng tên tệp cấu hình không có ký tự thừa, chẳng hạn như (2).

  2. Mở cửa sổ Project (Dự án) của dự án Unity, sau đó di chuyển (các) tệp cấu hình vào thư mục Assets.

  3. Trong bảng điều khiển Firebase, trong quy trình thiết lập, hãy nhấp vào Tiếp theo.

Bước 4: Thêm Firebase Unity SDK

  1. Trong bảng điều khiển Firebase, hãy nhấp vào Tải SDK Firebase Unity xuống, sau đó giải nén SDK ở một nơi thuận tiện.

    • Bạn có thể tải lại Firebase Unity SDK xuống bất cứ lúc nào.

    • SDK Firebase Unity không dành riêng cho nền tảng.

  2. Trong dự án Unity đang mở, hãy chuyển đến Assets (Tài sản) > Import Package (Nhập gói) > Custom Package (Gói tuỳ chỉnh).

  3. Trong SDK đã giải nén, hãy chọn các sản phẩm được Firebase hỗ trợ mà bạn muốn sử dụng trong ứng dụng của mình.

    • Thêm gói Firebase cho Google Analytics: FirebaseAnalytics.unitypackage
    • Thêm các gói cho mọi sản phẩm Firebase khác mà bạn muốn sử dụng trong ứng dụng của mình. Ví dụ: để sử dụng Firebase AuthenticationFirebase Realtime Database:
      FirebaseAuth.unitypackageFirebaseDatabase.unitypackage

    Thêm các gói cho những sản phẩm Firebase mà bạn muốn sử dụng trong ứng dụng của mình. Ví dụ: để sử dụng Firebase AuthenticationFirebase Realtime Database:
    FirebaseAuth.unitypackageFirebaseDatabase.unitypackage

  4. Trong cửa sổ Import Unity Package (Nhập gói Unity), hãy nhấp vào Import (Nhập).

  5. Trong bảng điều khiển Firebase, trong quy trình thiết lập, hãy nhấp vào Tiếp theo.

Bước 5: Xác nhận các yêu cầu về phiên bản Dịch vụ Google Play

Một số sản phẩm trong SDK Firebase Unity dành cho Android yêu cầu Google Play services. Tìm hiểu những sản phẩm có phần phụ thuộc này. Bạn phải cập nhật Google Play services thì mới sử dụng được các sản phẩm đó.

Thêm câu lệnh using và mã khởi chạy sau đây vào đầu ứng dụng của bạn. Bạn có thể kiểm tra và tuỳ ý cập nhật Google Play services lên phiên bản bắt buộc trước khi gọi bất kỳ phương thức nào khác trong SDK.

using Firebase.Extensions;
Firebase.FirebaseApp.CheckAndFixDependenciesAsync().ContinueWithOnMainThread(task => {
  var dependencyStatus = task.Result;
  if (dependencyStatus == Firebase.DependencyStatus.Available) {
    // Create and hold a reference to your FirebaseApp,
    // where app is a Firebase.FirebaseApp property of your application class.
       app = Firebase.FirebaseApp.DefaultInstance;

    // Set a flag here to indicate whether Firebase is ready to use by your app.
  } else {
    UnityEngine.Debug.LogError(System.String.Format(
      "Could not resolve all Firebase dependencies: {0}", dependencyStatus));
    // Firebase Unity SDK is not safe to use here.
  }
});

Bạn đã hoàn tất! Dự án Unity của bạn đã được đăng ký và định cấu hình để sử dụng Firebase.

Tuy nhiên, nếu bạn gặp vấn đề khi thiết lập, hãy truy cập vào phần Khắc phục sự cố và Câu hỏi thường gặp về Unity.

Thiết lập quy trình làm việc trên máy tính (bản thử nghiệm)

Khi tạo trò chơi, bạn thường dễ dàng kiểm thử trò chơi của mình trong trình chỉnh sửa Unity và trên các nền tảng máy tính trước, sau đó triển khai và kiểm thử trên thiết bị di động sau này trong quá trình phát triển. Để hỗ trợ quy trình này, chúng tôi cung cấp một nhóm nhỏ gồm các SDK Firebase Unity có thể chạy trên Windows, macOS, Linux và trong trình chỉnh sửa Unity.

  1. Thiết lập một dự án Unity trên nền tảng máy tính bằng cách làm theo hướng dẫn tương tự như đối với nền tảng di động (bắt đầu bằng bước Đăng ký ứng dụng của bạn với Firebase ở trên).

  2. Chạy dự án Unity trong Unity IDE hoặc chọn tạo dự án Unity cho máy tính.

  3. (Không bắt buộc) Chạy dự án Unity ở Chế độ chỉnh sửa.

    Bạn cũng có thể chạy SDK Firebase Unity ở chế độ chỉnh sửa của Unity, cho phép sử dụng SDK này trong các trình bổ trợ của trình chỉnh sửa.

    1. Khi bạn tạo một FirebaseApp mà trình chỉnh sửa sử dụng, đừng dùng thực thể mặc định.

    2. Thay vào đó, hãy cung cấp một tên riêng biệt cho lệnh gọi FirebaseApp.Create().

      Điều này rất quan trọng để tránh xung đột trong các lựa chọn giữa phiên bản do Unity IDE sử dụng và phiên bản do dự án Unity của bạn sử dụng.

Các sản phẩm được hỗ trợ của Firebase

Tìm hiểu thêm về các thư viện Unity Firebase trong tài liệu tham khảo.

Các thư viện Firebase có sẵn cho thiết bị di động

SDK Firebase Unity hỗ trợ các sản phẩm sau đây của Firebase trên AppleAndroid:

Sản phẩm Firebase Gói Unity
AdMob Được phân phối riêng trong Trình bổ trợ Unity AdMob
Firebase AI Logic FirebaseAI.unitypackage
Analytics FirebaseAnalytics.unitypackage
App Check FirebaseAppCheck.unitypackage
Authentication FirebaseAuth.unitypackage
Cloud Firestore FirebaseFirestore.unitypackage
Cloud Functions FirebaseFunctions.unitypackage
Cloud Messaging FirebaseMessaging.unitypackage
(nên dùng) FirebaseAnalytics.unitypackage
Cloud Storage FirebaseStorage.unitypackage
Crashlytics FirebaseCrashlytics.unitypackage
(nên dùng) FirebaseAnalytics.unitypackage
Dynamic Links FirebaseDynamicLinks.unitypackage
(nên dùng) FirebaseAnalytics.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage
(nên dùng) FirebaseAnalytics.unitypackage

Các thư viện Firebase có sẵn cho máy tính

SDK Firebase Unityhỗ trợ quy trình làm việc trên máy tính cho một số sản phẩm, cho phép sử dụng một số phần của Firebase trong trình chỉnh sửa Unity và trong các bản dựng độc lập trên máy tính chạy Windows, macOS và Linux.

Sản phẩm Firebase (máy tính) Gói Unity
Firebase AI Logic FirebaseAI.unitypackage
App Check FirebaseAppCheck.unitypackage
Authentication FirebaseAuth.unitypackage
Cloud Functions FirebaseFunctions.unitypackage
Cloud Firestore FirebaseFirestore.unitypackage
Cloud Storage FirebaseStorage.unitypackage
Realtime Database FirebaseDatabase.unitypackage
Remote Config FirebaseRemoteConfig.unitypackage

Firebase cung cấp các thư viện còn lại trên máy tính dưới dạng các triển khai stub (không hoạt động) để thuận tiện khi tạo cho Windows, macOS và Linux. Do đó, bạn không cần biên dịch có điều kiện mã để nhắm đến máy tính.

Các bước tiếp theo