Di chuyển từ CocoaPods

CocoaPods thông báo rằng họ sẽ chuyển sang chế độ chỉ đọc vào tháng 12 năm 2026, sau đó các phiên bản pod mới sẽ không thể xuất bản được nữa. Các phần sau đây cung cấp thêm thông tin về thay đổi này và giải thích cách di chuyển ứng dụng của bạn sang các trình quản lý cài đặt khác.

Tổng quan

  • Có gì thay đổi? CocoaPods đang chuyển sang trạng thái chỉ có thể đọc. Firebase 12 là phiên bản lớn cuối cùng được phát hành cho CocoaPods và Firebase sẽ ngừng phát hành các phiên bản mới cho CocoaPods vào tháng 10 năm 2026.
  • Ứng dụng của tôi có bị lỗi không? Không. Các phiên bản hiện có của thư viện Firebase sẽ vẫn có trong sổ đăng ký CocoaPods và các ứng dụng sử dụng những phiên bản CocoaPod đó sẽ tiếp tục hoạt động miễn là hệ sinh thái CocoaPods vẫn được hỗ trợ.
  • Tại sao phải di chuyển dữ liệu? Để tiếp tục nhận được các tính năng mới nhất, các điểm cải thiện hiệu suất và các bản sửa lỗi quan trọng, bạn nên chuyển sang sử dụng Trình quản lý gói Swift hoặc cài đặt thủ công.

Để phù hợp với thông báo của CocoaPods, Firebase sẽ ngừng phát hành các phiên bản mới cho CocoaPods vào tháng 10 năm 2026. Những thay đổi này ảnh hưởng đến tất cả các pod sau đây và các phần phụ thuộc phụ của chúng:

Các nhóm Firebase chịu ảnh hưởng
Firebase FirebaseAuth FirebaseInstallations
FirebaseABTesting FirebaseCore FirebaseMessaging
FirebaseAI FirebaseCrashlytics FirebaseMLModelDownloader
FirebaseAILogic FirebaseDatabase FirebasePerformance
FirebaseAnalytics FirebaseFirestore FirebaseRemoteConfig
FirebaseAppCheck FirebaseFunctions FirebaseStorage
FirebaseAppDistribution FirebaseInAppMessaging

Những thay đổi này cũng sẽ ảnh hưởng đến tất cả các bản phân phối Firebase bao bọc Firebase Apple SDK gốc, bao gồm cả SDK của Firebase cho Unity, SDK C++ của Firebase và FlutterFire.

Di chuyển các ứng dụng của Apple

Nếu bạn đang di chuyển các phần phụ thuộc khác (không phải Firebase) khỏi CocoaPods, hãy lưu ý rằng phương pháp hay nhất trong ngành là sử dụng một phương thức cài đặt duy nhất cho toàn bộ dự án của bạn. Việc kết hợp CocoaPods và Trình quản lý gói Swift (SPM) trong cùng một mục tiêu có thể dẫn đến các chu kỳ phụ thuộc phức tạp và lỗi bản dựng. Nếu các phần phụ thuộc không phải Firebase của bạn chưa hỗ trợ SPM, thì việc sử dụng quy trình cài đặt thủ công cho các thư viện Firebase là cách ổn định nhất để hợp nhất quy trình làm việc khi bạn di chuyển.

Trình quản lý gói Swift (SPM)

Trình quản lý gói Swift là gì?

Trình quản lý gói Swift (SPM) là công cụ gốc của Apple để quản lý việc phân phối mã. Công cụ này được tích hợp trực tiếp vào Xcode, giúp bạn không cần sử dụng các công cụ CLI bên ngoài như CocoaPods và đơn giản hoá cấu trúc dự án bằng cách loại bỏ nhu cầu về .xcworkspace cho hầu hết các cấu hình tiêu chuẩn.

Di chuyển sang dùng Trình quản lý gói Swift

Đối với hầu hết các dự án, việc di chuyển sang Trình quản lý gói Swift không yêu cầu thay đổi mã xử lý ứng dụng, trừ phi dự án của bạn có cấu hình Xcode tuỳ chỉnh hoặc các phần phụ thuộc sử dụng nhiều tập lệnh cài đặt CocoaPods.

Sau đây là cách di chuyển sang Trình quản lý gói Swift từ CocoaPods:

  1. Xác minh rằng mỗi phần phụ thuộc của ứng dụng đều hỗ trợ Trình quản lý gói Swift. Tất cả thư viện Firebase đều hỗ trợ SPM, nhưng bạn cần kiểm tra khả năng hỗ trợ SPM cho các phần phụ thuộc không phải Firebase trong kho lưu trữ GitHub hoặc trang sản phẩm của các phần phụ thuộc đó. Nếu một số phần phụ thuộc không phải của Firebase không hỗ trợ SPM, thì việc sử dụng phương thức cài đặt thủ công thay vì SPM là cách di chuyển ổn định nhất từ CocoaPods.
  2. Khi Xcode đóng, hãy xoá CocoaPods khỏi dự án của bạn:
    1. Gỡ cài đặt các phần phụ thuộc CocoaPods bằng cách chạy lệnh sau trong thư mục dự án:
      pod deintegrate
    2. Xoá .xcworkspace do CocoaPods tạo.
  3. Trong Xcode, hãy cập nhật dự án của bạn bằng các phần phụ thuộc của Trình quản lý gói Swift:
    1. Mở tệp .xcodeproj của dự án thông qua Xcode.
    2. Thêm lại các phần phụ thuộc của ứng dụng bằng cách chọn File > Add Package Dependencies (Tệp > Thêm phần phụ thuộc của gói).
  4. Sau khi thêm gói Firebase, bạn có thể cập nhật các thư viện Firebase mà bạn phụ thuộc bằng cách chuyển đến phần cài đặt dự án trong Xcode, chọn mục tiêu ứng dụng và cập nhật các thư viện trong phần Frameworks, Libraries, and Embedded Content (Khung, thư viện và nội dung nhúng).

Tìm hiểu thêm về cách sử dụng SPM trong Xcode trong tài liệu của Apple.

Cài đặt thủ công

Cài đặt thủ công là gì?

Quá trình cài đặt thủ công bao gồm việc tải tệp lưu trữ Firebase.zip xuống, tệp này chứa các XCFramework được biên dịch trước cho tất cả sản phẩm của Firebase. Nhờ đó, bạn có thể kéo và thả trực tiếp các SDK cụ thể vào dự án Xcode mà không cần sử dụng trình quản lý phần phụ thuộc.

Chuyển sang sử dụng chế độ cài đặt thủ công

  1. Khi Xcode đóng, hãy xoá CocoaPods khỏi dự án của bạn:
    1. Gỡ cài đặt các phần phụ thuộc CocoaPods bằng cách chạy lệnh sau trong thư mục dự án:
      pod deintegrate
    2. Xoá .xcworkspace do CocoaPods tạo.
  2. Làm theo các bước trong hướng dẫn lắp đặt để thêm Firebase vào dự án theo cách thủ công.

Di chuyển ứng dụng Unity, C++ và Flutter

SDK của Firebase cho Unity và FlutterFire

Hầu hết nhà phát triển Unity và Flutter không cần làm gì. Khi bạn cập nhật lên phiên bản Firebase mới nhất trên Unity hoặc Flutter, trình quản lý phần phụ thuộc cơ bản của bạn trên các nền tảng của Apple sẽ tự động di chuyển sang Trình quản lý gói Swift.

Xin lưu ý rằng nếu đang quản lý các phần phụ thuộc không phải Firebase thông qua CocoaPods, bạn có thể cần phải di chuyển các phần phụ thuộc đó theo cách thủ công.

SDK C++ của Firebase

Nếu đang thêm các phần phụ thuộc iOS cơ bản thông qua CocoaPods, bạn có thể làm theo hướng dẫn di chuyển ở trên để cập nhật các phần phụ thuộc CocoaPod của Firebase nhằm sử dụng Trình quản lý gói Swift.

Câu hỏi thường gặp

Tôi cần tiếp tục sử dụng CocoaPods sau tháng 10 năm 2026. Làm cách nào để duy trì hoạt động của ứng dụng?

Bạn có thể sử dụng các phiên bản cũ của pod Firebase hoặc sao chép podspec Firebase từ GitHub rồi lưu trữ chúng trong kho lưu trữ thông số kỹ thuật của riêng bạn.

Trong cả hai trường hợp, bạn nên di chuyển khỏi CocoaPods càng sớm càng tốt. Chúng tôi sẽ không cung cấp dịch vụ hỗ trợ chính thức cho việc cài đặt Firebase trực tiếp từ podspec sau khi ngừng hỗ trợ CocoaPods vào tháng 10 năm 2026. Nếu chọn lưu trữ podspec của riêng mình, bạn sẽ chịu trách nhiệm cập nhật podspec.

Tại sao dịch vụ hỗ trợ cho CocoaPods lại ngừng hoạt động vào tháng 10 năm 2026 trong khi CocoaPods có thể được phát hành cho đến tháng 12 năm 2026?

Chúng tôi chọn tháng 10 để đảm bảo các phiên bản cuối cùng được phát hành lên CocoaPods đều ổn định trước khi kho lưu trữ này bị khoá vào tháng 12. Tiến trình này cung cấp khoảng thời gian đệm cần thiết để điều phối một cách an toàn các bản cập nhật cuối cùng này, đồng thời đảm bảo rằng các SDK nhiều nền tảng (phụ thuộc vào SDK gốc nhưng có chu kỳ phát hành chậm hơn) có nhiều thời gian để chuẩn bị cho bản phát hành của riêng mình.

Ứng dụng của tôi có ngừng hoạt động nếu tôi không cập nhật không?

Không, việc ngừng sử dụng này chỉ ảnh hưởng đến các bản phát hành thư viện Firebase trong tương lai. Firebase 12 là phiên bản lớn cuối cùng được phát hành cho CocoaPods. Các phiên bản hiện có (phiên bản 12 trở xuống) trong CocoaPods vẫn có thể cài đặt và hoạt động bình thường miễn là hệ sinh thái CocoaPods vẫn được hỗ trợ.

Việc này có ảnh hưởng đến thông tin thanh toán của dự án không?

Không.

Tôi gặp lỗi "Không tìm thấy FirebaseLibrary" khi biên dịch dự án sau khi di chuyển sang Trình quản lý gói Swift. Làm cách nào để tôi chữa lỗi này?

Đảm bảo bạn đã thêm gói Firebase vào dự án Xcode.

Khi thêm gói Firebase, Xcode sẽ nhắc bạn thêm các khung Firebase vào mục tiêu bản dựng của ứng dụng. Nếu quên thêm khung trong bước này, bạn luôn có thể thêm khung sau trong phần cài đặt của mục tiêu trong Build Phases > Link Binary with Libraries (Giai đoạn xây dựng > Liên kết tệp nhị phân với thư viện). Nếu dự án của bạn chứa nhiều mục tiêu, hãy đảm bảo rằng bạn đã thêm Firebase vào đúng mục tiêu.

Quá trình chuyển đổi này có làm hỏng quy trình CI/CD của tôi không?

Không, các quy trình chạy pod install hoặc pod update sẽ tiếp tục hoạt động cho các phiên bản hiện có. Tuy nhiên, các ứng dụng này sẽ không nhận được bản cập nhật mới nào cho thư viện Firebase phát hành sau tháng 10 năm 2026.