CocoaPods thông báo rằng họ sẽ chuyển sang trạng thái chỉ đọc vào tháng 12 năm 2026. Sau đó, bạn sẽ không thể xuất bản các phiên bản pod mới. 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 sang các trình quản lý cài đặt khác.
Tổng quan
- Những thay đổi sắp tới là gì? CocoaPods sẽ chuyển sang trạng thái chỉ đọc và Firebase sẽ ngừng xuất bản các phiên bản mới lên CocoaPods vào tháng 10 năm 2026.
- Ứng dụng của tôi có bị hỏng không? Không. Các phiên bản hiện có của thư viện Firebase sẽ vẫn có sẵn vô thời hạn trên 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.
- Tại sao tôi nên di chuyển? Để tiếp tục nhận các tính năng mới nhất, điểm cải thiện hiệu suất và bản sửa lỗi quan trọng, bạn nên di chuyển sang Trình quản lý gói Swift hoặc cài đặt theo cách thủ công.
Để phù hợp với thông báo của CocoaPods, Firebase sẽ ngừng xuất bản các phiên bản mới lên CocoaPods vào tháng 10 năm 2026. Những thay đổi này sẽ ả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 pod Firebase bị ả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 SDK Firebase Apple gốc, bao gồm SDK Firebase Unity, SDK Firebase C++ và FlutterFire.
Di chuyển ứng dụng 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 bạn nên sử dụng một phương thức cài đặt cho toàn bộ dự á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ần 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 chưa hỗ trợ SPM, thì việc sử dụng phương thức cài đặt theo cách 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 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 sử dụng .xcworkspace cho hầu hết các cấu hình tiêu chuẩn.
Di chuyển sang sử 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 bạn phải thay đổi mã xử lý ứng dụng, trừ phi dự án của bạn có cá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.
Dưới đây là cách di chuyển sang Trình quản lý gói Swift từ CocoaPods:
- 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ả các thư viện Firebase đều hỗ trợ SPM, nhưng bạn cần kiểm tra xem các phần phụ thuộc không phải Firebase có hỗ trợ SPM hay không trong kho lưu trữ GitHub hoặc trang sản phẩm của chúng. Nếu một số phần phụ thuộc không phải Firebase không hỗ trợ SPM, thì việc sử dụng phương thức cài đặt theo cách thủ công thay vì SPM là cách di chuyển ổn định nhất khỏi CocoaPods.
- Khi Xcode đóng, hãy xoá CocoaPods khỏi dự án của bạn:
- 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
- Xoá
.xcworkspacedo CocoaPods tạo.
- 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:
- 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:
- Mở tệp
.xcodeprojcủa dự án thông qua Xcode. - Thêm lại các phần phụ thuộc của ứng dụng bằng cách sử dụng File > Add Package Dependencies (Tệp > Thêm phần phụ thuộc của gói).
- Mở tệp
- 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 theo cách thủ công
Cài đặt theo cách thủ công là gì?
Cài đặt theo cách thủ công là 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 sẵn cho tất cả các sản phẩm của Firebase. Điều này cho phép bạn kéo và thả các SDK cụ thể trực tiếp vào dự án Xcode mà không cần sử dụng trình quản lý phần phụ thuộc.
Di chuyển sang sử dụng phương thức cài đặt theo cách thủ công
- Khi Xcode đóng, hãy xoá CocoaPods khỏi dự án của bạn:
- 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
- Xoá
.xcworkspacedo CocoaPods tạo.
- 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:
- Làm theo các bước trong hướng dẫn cài đặt để thêm Firebase vào dự án của bạ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 đều không cần làm gì. Việc cập nhật lên phiên bản mới nhất của Firebase trên Unity hoặc Flutter sẽ tự động di chuyển trình quản lý phần phụ thuộc cơ bản trên các nền tảng của Apple sang Trình quản lý gói Swift.
Xin lưu ý rằng nếu bạn đang quản lý các phần phụ thuộc không phải Firebase thông qua CocoaPods, thì bạn có thể cần di chuyển các phần phụ thuộc đó theo cách thủ công.
SDK C++ của Firebase
Nếu bạn đang thêm các phần phụ thuộc iOS cơ bản thông qua CocoaPods, thì 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 Firebase CocoaPod 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 để ứng dụng của tôi tiếp tục chạy?
Bạn có thể sử dụng các phiên bản cũ của pod Firebase hoặc sao chép Firebase podspec từ GitHub và 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 các podspec đó.
Tại sao việc hỗ trợ CocoaPods lại bị ngừng vào tháng 10 năm 2026 khi CocoaPods có thể được xuất bản 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 xuất bản lên CocoaPods ổn định trước khi sổ đăng ký bị khoá vào tháng 12. Mốc thời gian này cung cấp một khoảng đệm cần thiết để phối hợp an toàn các bản cập nhật cuối cùng này và đảm bảo rằng các SDK đa nền tảng (phụ thuộc vào SDK gốc nhưng có chu kỳ phát hành bị trì hoãn) có nhiều thời gian để chuẩn bị các 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 trong tương lai của thư viện Firebase. Các phiên bản hiện có trong CocoaPods sẽ vẫn có thể cài đặt và các ứng dụng đã triển khai sử dụng những phiên bản pod đó sẽ không bị ảnh hưởng.
Việc này có ảnh hưởng đến hoá đơn dự án không?
Không.
Tôi gặp lỗi "FirebaseLibrary not found" (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 khắc phục lỗi này?
Đảm bảo bạn đã thêm gói Firebase vào dự án Xcode.
Khi bạn 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 một 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 phần Build Phases > Link Binary with Libraries (Giai đoạn bản 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 bạn đã thêm Firebase vào các mục tiêu chính xác.
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 đối với các phiên bản hiện có. Tuy nhiên, các quy trình này sẽ không kéo bất kỳ bản cập nhật thư viện Firebase mới nào được phát hành sau tháng 10 năm 2026.