CocoaPods mengumumkan bahwa mereka akan menjadi hanya baca pada Desember 2026, dan setelah itu versi pod baru tidak dapat dipublikasikan lagi. Bagian berikut memberikan informasi selengkapnya tentang perubahan ini, dan menjelaskan cara memigrasikan aplikasi Anda ke pengelola penginstalan lain.
Ringkasan
- Apa yang berubah? CocoaPods akan beralih ke status hanya baca, dan Firebase akan berhenti memublikasikan versi baru ke CocoaPods pada Oktober 2026.
- Apakah aplikasi saya akan rusak? Tidak. Versi library Firebase yang ada akan tetap tersedia tanpa batas waktu di registry CocoaPods, dan aplikasi Anda yang menggunakan versi CocoaPods tersebut akan terus berfungsi.
- Mengapa harus bermigrasi? Untuk terus menerima fitur, peningkatan performa, dan perbaikan penting terbaru, Anda harus memigrasikan penggunaan ke Swift Package Manager atau penginstalan manual.
Untuk mengakomodasi pengumuman dari CocoaPods, Firebase akan berhenti memublikasikan versi baru ke CocoaPods pada Oktober 2026. Perubahan ini memengaruhi semua pod berikut dan subdependensinya:
| Pod Firebase yang terpengaruh | ||
|---|---|---|
Firebase |
FirebaseAuth |
FirebaseInstallations |
FirebaseABTesting |
FirebaseCore |
FirebaseMessaging |
FirebaseAI |
FirebaseCrashlytics |
FirebaseMLModelDownloader |
FirebaseAILogic |
FirebaseDatabase |
FirebasePerformance |
FirebaseAnalytics |
FirebaseFirestore |
FirebaseRemoteConfig |
FirebaseAppCheck |
FirebaseFunctions |
FirebaseStorage |
FirebaseAppDistribution |
FirebaseInAppMessaging |
Perubahan ini juga akan memengaruhi semua distribusi Firebase yang membungkus Firebase Apple SDK native, termasuk Firebase Unity SDK, Firebase C++ SDK, dan FlutterFire.
Memigrasikan aplikasi Apple Anda
Jika Anda memigrasikan dependensi lain (non-Firebase) dari CocoaPods, perhatikan bahwa praktik terbaik industri adalah menggunakan satu metode penginstalan untuk seluruh project Anda. Mencampur CocoaPods dan Swift Package Manager (SPM) dalam target yang sama dapat menyebabkan siklus dependensi yang rumit dan error build. Jika dependensi non-Firebase Anda belum mendukung SPM, menggunakan penginstalan manual untuk library Firebase adalah cara paling stabil untuk menggabungkan alur kerja saat Anda melakukan migrasi.
Swift Package Manager (SPM)
Apa yang dimaksud dengan Swift Package Manager?
Swift Package Manager (SPM) adalah alat native Apple untuk mengelola distribusi kode. Fitur ini terintegrasi langsung ke Xcode, sehingga tidak memerlukan
alat CLI eksternal seperti CocoaPods dan menyederhanakan struktur project Anda dengan
menghilangkan kebutuhan akan .xcworkspace untuk sebagian besar konfigurasi standar.
Melakukan migrasi untuk menggunakan Swift Package Manager
Untuk sebagian besar project, migrasi ke Swift Package Manager tidak memerlukan perubahan kode aplikasi Anda, kecuali jika project Anda memiliki konfigurasi Xcode kustom atau dependensi yang banyak menggunakan skrip penginstalan CocoaPods.
Berikut cara bermigrasi ke Swift Package Manager dari CocoaPods:
- Verifikasi bahwa setiap dependensi aplikasi Anda mendukung Swift Package Manager. Semua library Firebase mendukung SPM, tetapi Anda harus memeriksa dukungan SPM untuk dependensi non-Firebase di repositori GitHub atau halaman produknya. Jika beberapa dependensi non-Firebase Anda tidak mendukung SPM, maka menggunakan penginstalan manual daripada SPM adalah jalur migrasi paling stabil dari CocoaPods.
- Dengan Xcode ditutup, hapus CocoaPods dari project Anda:
- Uninstal dependensi CocoaPods Anda dengan menjalankan perintah berikut di direktori project Anda:
pod deintegrate
- Hapus
.xcworkspaceyang dihasilkan CocoaPods.
- Uninstal dependensi CocoaPods Anda dengan menjalankan perintah berikut di direktori project Anda:
- Di Xcode, perbarui project Anda dengan dependensi Swift Package Manager:
- Buka file
.xcodeprojproject Anda melalui Xcode. - Tambahkan kembali dependensi aplikasi Anda menggunakan File > Add Package Dependencies.
- Buka file
- Setelah paket Firebase ditambahkan, Anda dapat mengupdate library Firebase yang Anda gunakan dengan membuka setelan project di Xcode, memilih target aplikasi, dan mengupdate library di bagian Frameworks, Libraries, and Embedded Content. Pelajari lebih lanjut cara menggunakan SPM di Xcode dalam dokumentasi Apple.
Penginstalan manual
Apa yang dimaksud dengan penginstalan manual?
Penginstalan manual melibatkan pendownloadan arsip Firebase.zip, yang berisi XCFramework yang telah dikompilasi sebelumnya untuk semua produk Firebase. Hal ini memungkinkan Anda
menarik lalu melepas SDK tertentu langsung ke project Xcode tanpa menggunakan
pengelola dependensi.
Bermigrasi untuk menggunakan penginstalan manual
- Dengan Xcode ditutup, hapus CocoaPods dari project Anda:
- Uninstal dependensi CocoaPods Anda dengan menjalankan perintah berikut di direktori project Anda:
pod deintegrate
- Hapus
.xcworkspaceyang dihasilkan CocoaPods.
- Uninstal dependensi CocoaPods Anda dengan menjalankan perintah berikut di direktori project Anda:
- Ikuti langkah-langkah dalam panduan penginstalan kami untuk menambahkan Firebase ke project Anda secara manual.
Memigrasikan aplikasi Unity, C++, dan Flutter
Firebase Unity SDK dan FlutterFire
Sebagian besar developer Unity dan Flutter tidak perlu melakukan tindakan apa pun. Mengupdate ke Firebase versi terbaru di Unity atau Flutter akan otomatis memigrasikan pengelola dependensi pokok Anda di platform Apple ke Swift Package Manager.
Perhatikan bahwa jika Anda mengelola dependensi non-Firebase melalui CocoaPods, Anda mungkin perlu memigrasikannya secara manual.
Firebase C++ SDK
Jika Anda menyertakan dependensi iOS pokok melalui CocoaPods, Anda dapat mengikuti petunjuk migrasi di atas untuk memperbarui dependensi CocoaPod Firebase agar menggunakan Swift Package Manager.
FAQ
Saya harus terus menggunakan CocoaPods setelah Oktober 2026. Bagaimana cara agar aplikasi saya tetap berjalan?
Anda dapat menggunakan pod Firebase versi lama atau menyalin podspec Firebase dari GitHub dan menghostingnya di repositori spesifikasi Anda sendiri.
Dalam kedua kasus tersebut, sebaiknya Anda segera bermigrasi dari CocoaPods. Kami tidak akan memberikan dukungan resmi untuk menginstal Firebase langsung dari podspec setelah dukungan CocoaPods dihentikan pada Oktober 2026. Jika Anda memilih untuk menghosting podspec sendiri, Anda akan bertanggung jawab untuk terus memperbaruinya.
Mengapa dukungan untuk CocoaPods dihentikan pada Oktober 2026, padahal CocoaPods dapat dipublikasikan hingga Desember 2026?
Kami memilih bulan Oktober untuk memastikan versi final yang dipublikasikan ke CocoaPods stabil sebelum pendaftaran dikunci pada bulan Desember. Linimasa ini memberikan waktu yang cukup untuk mengoordinasikan update akhir ini dengan aman, dan memastikan bahwa SDK lintas platform—yang bergantung pada SDK native tetapi memiliki siklus rilis yang tertunda—memiliki banyak waktu untuk menyiapkan rilisnya sendiri.
Apakah aplikasi saya akan berhenti berfungsi jika saya tidak melakukan update?
Tidak, penghentian penggunaan ini hanya memengaruhi rilis mendatang library Firebase. Versi yang ada di CocoaPods akan tetap dapat diinstal dan aplikasi yang di-deploy menggunakan versi pod tersebut tidak akan terpengaruh.
Apakah hal ini memengaruhi penagihan project?
Tidak.
Saya mendapatkan error "FirebaseLibrary not found" saat mengompilasi project setelah bermigrasi ke Swift Package Manager. Bagaimana cara mengatasi ini?
Pastikan Anda telah menambahkan paket Firebase ke project Xcode Anda.
Saat menambahkan paket Firebase, Xcode akan meminta Anda untuk menambahkan framework Firebase ke target build aplikasi Anda. Jika lupa menambahkan framework selama langkah ini, Anda selalu dapat menambahkannya nanti di setelan target Anda di bagian Build Phases > Link Binary with Libraries. Jika project Anda berisi beberapa target, pastikan Anda telah menambahkan Firebase ke target yang benar.
Apakah transisi ini akan merusak pipeline CI/CD saya?
Tidak, pipeline yang menjalankan pod install atau pod update akan terus berfungsi untuk versi yang ada. Namun, mereka tidak akan menarik update library Firebase baru yang dirilis setelah Oktober 2026.