Google is committed to advancing racial equity for Black communities. See how.
Trang này được dịch bởi Cloud Translation API.
Switch to English

Thêm Firebase vào dự án C ++ của bạn

Tăng sức mạnh cho các trò chơi C ++ của bạn với SDK Firebase C ++ của chúng tôi, cung cấp giao diện C ++ trên Firebase cho iOS và cho Android.

Truy cập Firebase hoàn toàn từ mã C ++ của bạn mà không phải viết bất kỳ mã gốc nền tảng nào. SDK Firebase cũng dịch nhiều thành ngữ dành riêng cho ngôn ngữ được Firebase sử dụng sang giao diện quen thuộc hơn với các nhà phát triển C ++.

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

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

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

  • Cài đặt như sau:

    • Xcode 10.3.0 trở lên
    • CacaoPods 1.4.0 trở lên
  • Đảm bảo rằng dự án của bạn nhắm mục tiêu iOS 8 trở lên.

  • Thiết lập thiết bị iOS vật lý hoặc sử dụng trình giả lập iOS để chạy ứng dụng của bạn.

  • Đăng nhập vào Firebase bằng tài khoản Google của bạn.

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

Trước khi bạn có thể thêm Firebase vào dự án C ++ của mình, bạn cần tạo dự án Firebase để kết nối với dự án C ++ của mình. Truy cập Hiểu các dự án Firebase để tìm hiểu thêm về các dự án Firebase.

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

Sau khi bạn có dự án Firebase, bạn có thể thêm ứng dụng iOS của mình vào đó.

Truy cập Hiểu các Dự án Firebase để tìm hiểu thêm về các thực tiễn và cân nhắc tốt nhất để thêm ứng dụng vào dự án Firebase, bao gồm cách xử lý nhiều biến thể xây dựng.

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

  2. Ở trung tâm của trang tổng quan dự án, nhấp vào biểu tượng iOS ( ) để khởi 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 của mình, hãy nhấp vào Thêm ứng dụng để hiển thị các tùy chọn nền tảng.

  3. Nhập ID gói ứng dụng của bạn vào trường ID gói iOS .

  4. (Tùy chọn) Nhập thông tin ứng dụng khác: Biệt hiệu ứng dụngID cửa hàng ứng dụng .

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

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

  1. Nhấp vào Tải xuống GoogleService-Info.plist để lấy tệp cấu hình Firebase iOS của bạn.

  2. Mở dự án C ++ của bạn trong IDE, sau đó kéo tệp cấu hình của bạn vào thư mục gốc của dự án C ++.

  3. Nếu được nhắc, hãy chọn để thêm tệp cấu hình cho tất cả các mục tiêu.

Bạn đã hoàn thành việc thiết lập các tác vụ trong bảng điều khiển Firebase. Tiếp tục thêm SDK Firebase C ++ bên dưới.

Bước 5 : Thêm SDK Firebase C ++

Các bước trong phần này là một ví dụ về cách thêm các sản phẩm Firebase được hỗ trợ vào dự án Firebase C ++ của bạn.

  1. Tải xuống SDK Firebase C ++ , sau đó giải nén SDK ở đâu đó thuận tiện.

    SDK Firebase C ++ không dành riêng cho nền tảng, nhưng nó chứa các thư viện dành riêng cho nền tảng.

  2. Thêm căn cứ hỏa lực pods từ SDK được giải nén.

    1. Tạo một Podfile nếu bạn chưa có:

      cd your-app-directory 
      pod init

    2. Vào Podfile của bạn, hãy thêm các nhóm Firebase mà bạn muốn sử dụng trong ứng dụng của mình.

      Đã bật phân tích

      # Add the Firebase pod for Google Analytics
      pod 'Firebase/Analytics'
      # Add the pods for any other Firebase products you want to use in your app # For example, to use Firebase Authentication and Firebase Realtime Database pod 'Firebase/Auth' pod 'Firebase/Database'

      Phân tích không được bật

      # Add the pods for the Firebase products you want to use in your app
      # For example, to use Firebase Authentication and Firebase Realtime Database
      pod 'Firebase/Auth'
      pod 'Firebase/Database'
    3. Cài đặt các nhóm, sau đó mở tệp .xcworkspace trong Xcode.

      pod install
      open your-app .xcworkspace

  3. Thêm các khung Firebase từ SDK đã giải nén.

    Cách dễ nhất để thêm các khung này thường là kéo chúng từ cửa sổ Finder trực tiếp vào khung Project Navigator của Xcode (khung bên trái, theo mặc định; hoặc nhấp vào biểu tượng tệp ở góc trên bên trái của Xcode).

    1. Thêm khung công tác Firebase C ++ firebase.framework , được yêu cầu để sử dụng bất kỳ sản phẩm Firebase nào.

    2. Thêm khung cho mỗi sản phẩm Firebase mà bạn muốn sử dụng. Ví dụ: để sử dụng Xác thực Firebase, hãy thêm firebase_auth.framework .

  4. Quay lại bảng điều khiển Firebase, trong quy trình thiết lập, bấm Tiếp theo .

  5. Nếu bạn đã thêm Analytics, hãy chạy ứng dụng của bạn để gửi xác minh đến Firebase mà bạn đã tích hợp thành công Firebase. Nếu không, bạn có thể bỏ qua bước xác minh này.

    Nhật ký thiết bị của bạn sẽ hiển thị xác minh Firebase rằng quá trình khởi tạo đã hoàn tất. Nếu bạn đã chạy ứng dụng của mình trên trình giả lập có quyền truy cập mạng, bảng điều khiển Firebase sẽ thông báo cho bạn rằng kết nối ứng dụng của bạn đã hoàn tất.

Bạn đã sẵn sàng! Ứng dụng C ++ của bạn được đăng ký và định cấu hình để sử dụng các sản phẩm Firebase.

Thư viện có sẵn

Tìm hiểu thêm về các thư viện Firebase C ++ trong tài liệu tham khảo và trong bản phát hành SDK nguồn mở của chúng tôi trên GitHub .

Thư viện có sẵn cho iOS

Lưu ý rằng các thư viện C ++ cho Android được liệt kê trên phiên bản Android của trang thiết lập này .

Mỗi sản phẩm Firebase có phụ thuộc khác nhau. Đảm bảo thêm tất cả các phụ thuộc được liệt kê cho sản phẩm Firebase mong muốn vào dự án Podfile và C ++ của bạn.

Sản phẩm Firebase Khung và Pods
Quảng cáo (bắt buộc) firebase.framework
firebase_admob.framework
(bắt buộc) firebase_analytics.framework

pod 'Firebase/AdMob', '6.24.0'
(bắt buộc) pod 'Firebase/Analytics', '6.24.0'
phân tích (bắt buộc) firebase.framework
firebase_analytics.framework

pod 'Firebase/Analytics', '6.24.0'
Xác thực (bắt buộc) firebase.framework
firebase_auth.framework

pod 'Firebase/Auth', '6.24.0'
Đám mây lửa (alpha) (bắt buộc) firebase.framework
firebase_firestore.framework
firebase_auth.framework

pod 'Firebase/Firestore', '6.24.0'
pod 'Firebase/Auth', '6.24.0'
Hàm đám mây (bắt buộc) firebase.framework
firebase_functions.framework

pod 'Firebase/Functions', '6.24.0'
Tin nhắn trên đám mây (bắt buộc) firebase.framework
firebase_messaging.framework
(được khuyến nghị) firebase_analytics.framework

pod 'Firebase/Messaging', '6.24.0'
(được khuyến nghị) pod 'Firebase/Analytics', '6.24.0'
Lưu trữ đám mây (bắt buộc) firebase.framework
firebase_storage.framework

pod 'Firebase/Storage', '6.24.0'
Liên kết động (bắt buộc) firebase.framework
firebase_dynamic_links.framework
(được khuyến nghị) firebase_analytics.framework

pod 'Firebase/DynamicLinks', '6.24.0'
(được khuyến nghị) pod 'Firebase/Analytics', '6.24.0'
Cơ sở dữ liệu thời gian thực (bắt buộc) firebase.framework
firebase_database.framework

pod 'Firebase/Database', '6.24.0'
Cấu hình từ xa (bắt buộc) firebase.framework
firebase_remote_config.framework
(được khuyến nghị) firebase_analytics.framework

pod 'Firebase/RemoteConfig', '6.24.0'
(được khuyến nghị) pod 'Firebase/Analytics', '6.24.0'

Thông tin bổ sung cho thiết lập di động

Phương pháp swizzling

Trên iOS, một số sự kiện ứng dụng (như mở URL và nhận thông báo) yêu cầu đại biểu ứng dụng của bạn thực hiện các phương pháp cụ thể. Ví dụ: nhận được thông báo có thể yêu cầu đại biểu ứng dụng của bạn triển khai application:didReceiveRemoteNotification: . Vì mỗi ứng dụng iOS có đại biểu ứng dụng riêng, Firebase sử dụng phương thức swizzling , cho phép thay thế một phương thức này bằng một phương thức khác, để đính kèm các trình xử lý riêng của mình ngoài bất kỳ phương thức nào bạn có thể thực hiện.

Các thư viện Liên kết động và Tin nhắn trên đám mây cần đính kèm các trình xử lý với đại biểu ứng dụng bằng cách sử dụng phương thức swizzling. Nếu bạn đang sử dụng bất kỳ sản phẩm Firebase nào, tại thời điểm tải, Firebase sẽ xác định lớp AppDelegate của bạn và làm AppDelegate các phương thức cần thiết trên đó, nối lại cuộc gọi thực hiện phương thức hiện có của bạn.

Thiết lập quy trình làm việc trên máy tính để bàn ( beta )

Khi bạn đang tạo trò chơi, trước tiên, việc kiểm tra trò chơi của bạn trên nền tảng máy tính để bàn sẽ dễ dàng hơn nhiều, sau đó triển khai và thử nghiệm trên các thiết bị di động sau này trong quá trình phát triển. Để hỗ trợ quy trình công việc này, chúng tôi cung cấp một tập hợp con SDK Firebase C ++ có thể chạy trên Windows, macOS, Linux và từ trong trình soạn thảo C ++.

  1. Đối với quy trình làm việc trên máy tính để bàn, bạn cần hoàn thành các bước sau:

    1. Định cấu hình dự án C ++ của bạn cho CMake.
    2. Tạo một dự án Firebase
    3. Đăng ký ứng dụng của bạn (iOS hoặc Android) với Firebase
    4. Thêm tệp cấu hình Firebase trên nền tảng di động
  2. Tạo phiên bản máy tính để bàn của tệp cấu hình Firebase:

    • Nếu bạn đã thêm tệp google-services.json trên Android - Khi bạn chạy ứng dụng của mình, Firebase sẽ định vị tệp di động này, sau đó tự động tạo tệp cấu hình Firebase trên máy tính để bàn ( google-services-desktop.json ).

    • Nếu bạn đã thêm tệp GoogleService-Info.plist iOS - Trước khi chạy ứng dụng của mình, bạn cần chuyển đổi tệp di động này thành tệp cấu hình Firebase trên máy tính để bàn . Để chuyển đổi tệp, hãy chạy lệnh sau từ cùng thư mục với tệp GoogleService-Info.plist của bạn:

      generate_xml_from_google_services_json.py --plist -i GoogleService-Info.plist

    Tệp cấu hình máy tính để bàn này chứa ID dự án C ++ mà bạn đã nhập trong quy trình thiết lập bảng điều khiển Firebase. Truy cập Hiểu các dự án Firebase để tìm hiểu thêm về các tệp cấu hình.

  3. Thêm SDK Firebase vào dự án C ++ của bạn.

    Các bước bên dưới là ví dụ về cách thêm bất kỳ sản phẩm Firebase được hỗ trợ nào vào dự án C ++ của bạn. Trong ví dụ này, chúng tôi sẽ giới thiệu thêm cơ sở dữ liệu xác thực Firebase và cơ sở dữ liệu thời gian thực Firebase.

    1. Đặt biến môi trường FIREBASE_CPP_SDK_DIR của bạn thành vị trí của SDK Firebase C ++ đã giải nén.

    2. CMakeLists.txt tệp CMakeLists.txt của dự án của bạn, hãy thêm nội dung sau, bao gồm các thư viện cho các sản phẩm Firebase mà bạn muốn sử dụng. Ví dụ: để sử dụng Xác thực Firebase và Cơ sở dữ liệu thời gian thực Firebase:

      # Add Firebase libraries to the target using the function from the SDK.
      add_subdirectory(${FIREBASE_CPP_SDK_DIR} bin/ EXCLUDE_FROM_ALL)
      
      # The Firebase C++ library `firebase_app` is required,
      # and it must always be listed last.
      
      # Add the Firebase SDKs for the products you want to use in your app
      # For example, to use Firebase Authentication and Firebase Realtime Database
      set(firebase_libs firebase_auth firebase_database firebase_app)
      target_link_libraries(${target_name} "${firebase_libs}")
      
  4. Chạy ứng dụng C ++ của bạn.

Thư viện có sẵn (máy tính để bàn)

SDK Firebase C ++ bao gồm hỗ trợ dòng công việc của máy tính để bàn cho một tập hợp các tính năng, cho phép một số phần nhất định của Firebase được sử dụng trong các bản dựng máy tính để bàn độc lập trên Windows, macOS và Linux.

Sản phẩm Firebase Tài liệu tham khảo thư viện (sử dụng CMake)
Xác thực firebase_auth
(bắt buộc) firebase_app
Đám mây lửa (alpha) firebase_firestore
firebase_auth
firebase_app
Hàm đám mây firebase_functions
(bắt buộc) firebase_app
Lưu trữ đám mây firebase_storage
(bắt buộc) firebase_app
Cơ sở dữ liệu thời gian thực firebase_database
(bắt buộc) firebase_app
Cấu hình từ xa firebase_remote_config
(bắt buộc) firebase_app

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

Máy tính để bàn cơ sở dữ liệu thời gian thực

SDK cơ sở dữ liệu thời gian thực cho máy tính để bàn sử dụng REST để truy cập cơ sở dữ liệu của bạn, do đó bạn phải khai báo các chỉ mục bạn sử dụng với Query::OrderByChild() trên máy tính để bàn nếu không người nghe của bạn sẽ thất bại.

Thông tin bổ sung cho thiết lập máy tính để bàn

Thư viện Windows

Đối với Windows, các phiên bản thư viện được cung cấp dựa trên các điều sau:

  • Xây dựng nền tảng: chế độ 32 bit (x86) so với 64 bit (x64)
  • Môi trường thời gian chạy Windows: Đa luồng / MT so với Đa luồng DLL / MD
  • Mục tiêu: Phát hành vs Gỡ lỗi

Lưu ý rằng các thư viện sau đã được thử nghiệm bằng Visual Studio 2015 và 2017.

Khi xây dựng các ứng dụng máy tính để bàn C ++ trên Windows, hãy liên kết các thư viện SDK Windows sau với dự án của bạn. Tham khảo tài liệu biên dịch của bạn để biết thêm thông tin.

Thư viện Firebase C ++ Thư viện Windows SDK phụ thuộc
Xác thực advapi32, ws2_32, crypt32
Đám mây lửa advapi32, ws2_32, crypt32, rpcrt4, ole32, shell32
Hàm đám mây advapi32, ws2_32, crypt32, rpcrt4, ole32
Lưu trữ đám mây advapi32, ws2_32, crypt32
Cơ sở dữ liệu thời gian thực advapi32, ws2_32, crypt32, iphlpapi, psapi, userenv
Cấu hình từ xa advapi32, ws2_32, crypt32, rpcrt4, ole32

thư viện macOS

Đối với macOS (Darwin), các phiên bản thư viện được cung cấp cho nền tảng 64 bit (x86_64). Khung cũng được cung cấp để thuận tiện cho bạn.

Lưu ý rằng các thư viện macOS đã được kiểm tra bằng Xcode 10.3.0.

Khi xây dựng các ứng dụng máy tính để bàn C ++ trên macOS, hãy liên kết các mục sau với dự án của bạn:

  • thư viện hệ thống pthread
  • Khung hệ thống macOS CoreFoundation
  • Khung hệ thống macOS Foundation
  • Security khung hệ thống macOS
  • Khung hệ thống macSS GSS
  • Khung hệ thống macOS Kerberos
  • Khung hệ thống macOS SystemConfiguration

Tham khảo tài liệu biên dịch của bạn để biết thêm thông tin.

Thư viện Linux

Đối với Linux, các phiên bản thư viện được cung cấp cho các nền tảng 32 bit (i386) và 64 bit (x86_64).

Lưu ý rằng các thư viện Linux đã được kiểm tra bằng GCC 4.8.0, GCC 7.2.0 và Clang 5.0 trên Ubuntu.

Khi xây dựng các ứng dụng máy tính để bàn C ++ trên Linux, hãy liên kết thư viện hệ thống pthread với dự án của bạn. Tham khảo tài liệu biên dịch của bạn để biết thêm thông tin. Nếu bạn đang xây dựng với GCC 5 trở lên, hãy xác định -D_GLIBCXX_USE_CXX11_ABI=0 .

Bước tiếp theo