Jika panggilan balik penyelesaian pada metode Otentikasi menerima argumen NSError
yang bukan nihil, kesalahan telah terjadi. Untuk mengirim ke logika penanganan kesalahan yang sesuai dalam kode produksi Anda, periksa kode kesalahan terhadap kesalahan umum dan kesalahan khusus metode yang tercantum di bawah ini.
Beberapa kesalahan dapat diselesaikan dengan tindakan pengguna tertentu, misalnya, FIRAuthErrorCodeUserTokenExpired
dapat diselesaikan dengan membuat pengguna masuk lagi, dan FIRAuthErrorCodeWrongPassword
dengan meminta pengguna untuk memberikan kata sandi yang benar.
Kecuali dalam kasus FIRAuthErrorCodeNetworkError
atau FIRAuthErrorCodeTooManyRequests
, mencoba kembali operasi yang gagal dengan argumen yang sama tidak akan pernah berhasil. Jangan berasumsi apakah operasi telah diterapkan di sisi server atau tidak.
Saat menyelidiki atau mencatat kesalahan, userInfo
kamus info pengguna. FIRAuthErrorNameKey
berisi string nama kesalahan lintas platform yang dapat digunakan untuk mengidentifikasi kesalahan. NSLocalizedDescriptionKey
berisi deskripsi kesalahan. Deskripsi ini dimaksudkan untuk pengembang, bukan pengguna. NSUnderlyingErrorKey
berisi kesalahan mendasar yang menyebabkan kesalahan tersebut, jika ada kesalahan mendasar.
Selain bidang utama yang tercantum di atas, mungkin ada bidang lain dalam kamus userInfo
pengguna yang mungkin berguna bagi Anda saat mendiagnosis kesalahan.
Kode kesalahan umum untuk semua metode API
Kode | Berarti |
---|
FIRAuthErrorCodeNetworkError | Menunjukkan kesalahan jaringan yang terjadi selama operasi. |
FIRAuthErrorCodeUserNotFound | Menunjukkan akun pengguna tidak ditemukan. Ini bisa terjadi jika akun pengguna telah dihapus. |
FIRAuthErrorCodeUserTokenExpired | Menunjukkan token pengguna saat ini telah kedaluwarsa, misalnya, pengguna mungkin telah mengubah kata sandi akun di perangkat lain. Anda harus meminta pengguna untuk masuk lagi di perangkat ini. |
FIRAuthErrorCodeTooManyRequests | Menunjukkan bahwa permintaan telah diblokir setelah jumlah permintaan yang tidak normal dibuat dari perangkat pemanggil ke server Firebase Authentication. Coba lagi setelah beberapa waktu. |
FIRAuthErrorCodeInvalidAPIKey | Menunjukkan aplikasi telah dikonfigurasi dengan kunci API yang tidak valid. |
FIRAuthErrorCodeAppNotAuthorized | Menunjukkan bahwa Aplikasi tidak diizinkan untuk menggunakan Firebase Authentication dengan Kunci API yang disediakan. buka Konsol Google API dan periksa di bawah tab kredensial bahwa kunci API yang Anda gunakan telah memasukkan ID bundel aplikasi Anda ke daftar putih. |
FIRAuthErrorCodeKeychainError | Menunjukkan kesalahan yang terjadi saat mengakses gantungan kunci. Bidang NSLocalizedFailureReasonErrorKey dan NSUnderlyingErrorKey di kamus NSError.userInfo akan berisi informasi selengkapnya tentang kesalahan yang ditemui. |
FIRAuthErrorCodeInternalError | Menunjukkan kesalahan internal yang terjadi. Harap laporkan kesalahan dengan seluruh objek NSError . |
Kode kesalahan khusus metode
FIRAuth
fetchProvidersForEmail:penyelesaian:
Kode | Berarti |
---|
FIRAuthErrorCodeInvalidEmail | Menunjukkan alamat email salah format. |
signInWithEmail:kata sandi:selesai:
Kode | Berarti |
---|
FIRAuthErrorCodeOperationNotAllowed | Menunjukkan bahwa akun email dan kata sandi tidak diaktifkan. Aktifkan mereka di bagian Auth di Firebase console . |
FIRAuthErrorCodeInvalidEmail | Menunjukkan alamat email salah format. |
FIRAuthErrorCodeUserDisabled | Menunjukkan akun pengguna dinonaktifkan. |
FIRAuthErrorCodeWrongPassword | Menunjukkan pengguna mencoba masuk dengan sandi yang salah. |
signInWithCredential:penyelesaian:
Kode | Berarti |
---|
FIRAuthErrorCodeInvalidCredential | Menunjukkan kredensial yang diberikan tidak valid. Ini bisa terjadi jika sudah kedaluwarsa atau formatnya salah. |
FIRAuthErrorCodeInvalidEmail | Menunjukkan alamat email salah format, jika kredensial bertipe EmailPasswordAuthCredential . |
FIRAuthErrorCodeOperationNotAllowed | Menunjukkan bahwa akun dengan penyedia identitas yang diwakili oleh kredensial tidak diaktifkan. Aktifkan mereka di bagian Auth di Firebase console . |
FIRAuthErrorCodeEmailAlreadyInUse | Menunjukkan email yang ditegaskan oleh kredensial (misalnya email di token akses Facebook) sudah digunakan oleh akun yang ada, yang tidak dapat diautentikasi dengan metode masuk ini. Panggil fetchProvidersForEmail untuk email pengguna ini, lalu minta mereka untuk masuk dengan salah satu penyedia masuk yang dikembalikan. Kesalahan ini hanya akan muncul jika setelan "Satu akun per alamat email" diaktifkan di Firebase console , di bawah setelan Otentikasi. |
FIRAuthErrorCodeUserDisabled | Menunjukkan akun pengguna dinonaktifkan. |
FIRAuthErrorCodeWrongPassword | Menunjukkan pengguna mencoba masuk dengan sandi yang salah, jika kredensial berjenis EmailPasswordAuthCredential . |
signInAnonymouslyWithCompletion:
Kode | Berarti |
---|
FIRAuthErrorCodeOperationNotAllowed | Menunjukkan bahwa akun anonim tidak diaktifkan. Aktifkan mereka di bagian Auth di Firebase console . |
signInWithCustomToken:selesai:
Kode | Berarti |
---|
FIRAuthErrorCodeInvalidCustomToken | Menunjukkan kesalahan validasi dengan token khusus. |
FIRAuthErrorCodeCustomTokenMismatch | Menunjukkan akun layanan dan kunci API milik proyek yang berbeda. |
createUserWithEmail:kata sandi:penyelesaian:
Kode | Berarti |
---|
FIRAuthErrorCodeInvalidEmail | Menunjukkan alamat email salah format. |
FIRAuthErrorCodeEmailAlreadyInUse | Menunjukkan email yang digunakan untuk mencoba mendaftar sudah ada. Panggil fetchProvidersForEmail untuk memeriksa mekanisme masuk mana yang digunakan pengguna tersebut, dan meminta pengguna untuk masuk dengan salah satunya. |
FIRAuthErrorCodeOperationNotAllowed | Menunjukkan bahwa akun email dan kata sandi tidak diaktifkan. Aktifkan mereka di bagian Otentikasi di Firebase console . |
FIRAuthErrorCodeWeakPassword | Menunjukkan upaya untuk menetapkan sandi yang dianggap terlalu lemah. Bidang NSLocalizedFailureReasonErrorKey di objek kamus NSError.userInfo akan berisi penjelasan lebih rinci yang dapat ditampilkan kepada pengguna. |
keluar:
Kode | Berarti |
---|
FIRAuthErrorCodeKeychainError | Diindikasikan terjadi kesalahan saat mengakses gantungan kunci. Bidang NSLocalizedFailureReasonErrorKey dan NSUnderlyingErrorKey di kamus NSError.userInfo akan berisi informasi selengkapnya tentang kesalahan yang ditemui. |
FIRUser
Kesalahan umum untuk operasi FIRUser
Kode | Berarti |
---|
FIRAuthErrorCodeInvalidUserToken | Menunjukkan bahwa token penyegaran pengguna yang masuk, yang menyimpan informasi sesi, tidak valid. Anda harus meminta pengguna untuk masuk lagi di perangkat ini. |
FIRAuthErrorCodeUserDisabled | Menunjukkan akun pengguna dinonaktifkan dan tidak dapat digunakan lagi hingga diaktifkan kembali dari dalam panel Pengguna di konsol Firebase. |
reauthenticateWithCredential: penyelesaian:
Kode | Berarti |
---|
FIRAuthErrorCodeInvalidCredential | Menunjukkan kredensial yang diberikan tidak valid. Ini bisa terjadi jika sudah kedaluwarsa atau formatnya salah. |
FIRAuthErrorCodeInvalidEmail | Menunjukkan alamat email salah format, jika kredensial bertipe EmailPasswordAuthCredential . |
FIRAuthErrorCodeWrongPassword | Menunjukkan pengguna mencoba mengautentikasi ulang dengan sandi yang salah, jika kredensial bertipe EmailPasswordAuthCredential . |
FIRAuthErrorCodeUserMismatch | Menunjukkan bahwa upaya telah dilakukan untuk mengautentikasi ulang dengan pengguna yang bukan pengguna saat ini. |
FIRAuthErrorCodeOperationNotAllowed | Menunjukkan bahwa akun dengan penyedia identitas yang diwakili oleh kredensial tidak diaktifkan. Aktifkan mereka di bagian Auth di Firebase console . |
FIRAuthErrorCodeEmailAlreadyInUse | Menunjukkan email yang ditegaskan oleh kredensial (misalnya email di token akses Facebook) sudah digunakan oleh akun yang ada, yang tidak dapat diautentikasi ulang dengan metode masuk ini. Panggil fetchProvidersForEmail untuk email pengguna ini, lalu minta mereka untuk masuk dengan salah satu penyedia masuk yang dikembalikan. Kesalahan ini hanya akan muncul jika setelan "Satu akun per alamat email" diaktifkan di Firebase console , di bawah setelan Otentikasi. |
FIRAuthErrorCodeUserDisabled | Menunjukkan akun pengguna dinonaktifkan. |
updateEmail:selesai:
Kode | Berarti |
---|
FIRAuthErrorCodeEmailAlreadyInUse | Menunjukkan email sudah digunakan oleh akun lain. |
FIRAuthErrorCodeInvalidEmail | Menunjukkan alamat email salah format. |
FIRAuthErrorCodeRequiresRecentLogin | Memperbarui email pengguna adalah operasi sensitif keamanan yang memerlukan login terbaru dari pengguna. Kesalahan ini menunjukkan bahwa pengguna belum cukup lama masuk. Untuk mengatasinya, autentikasi ulang pengguna dengan menjalankan reauthenticateWithCredential:completion: pada FIRUser . |
updatePassword:selesai:
Kode | Berarti |
---|
FIRAuthErrorCodeOperationNotAllowed | Menunjukkan administrator menonaktifkan masuk dengan penyedia identitas yang ditentukan. |
FIRAuthErrorCodeRequiresRecentLogin | Memperbarui kata sandi pengguna adalah operasi sensitif keamanan yang memerlukan login terbaru dari pengguna. Kesalahan ini menunjukkan bahwa pengguna belum cukup lama masuk. Untuk mengatasinya, autentikasi ulang pengguna dengan menjalankan reauthenticateWithCredential:completion: pada FIRUser . |
FIRAuthErrorCodeWeakPassword | Menunjukkan upaya untuk menetapkan sandi yang dianggap terlalu lemah. Bidang NSLocalizedFailureReasonErrorKey di objek kamus NSError.userInfo akan berisi penjelasan lebih rinci yang dapat ditampilkan kepada pengguna. |
linkWithCredential:selesai:
Kode | Berarti |
---|
FIRAuthErrorCodeProviderAlreadyLinked | Menunjukkan upaya untuk menautkan penyedia dari jenis yang sudah ditautkan ke akun ini. |
FIRAuthErrorCodeCredentialAlreadyInUse | Menunjukkan upaya untuk menautkan dengan kredensial yang telah ditautkan dengan akun Firebase yang berbeda. |
FIRAuthErrorCodeOperationNotAllowed | Menunjukkan bahwa akun dengan penyedia identitas yang diwakili oleh kredensial tidak diaktifkan. Aktifkan mereka di bagian Auth di Firebase console . |
Metode ini juga dapat mengembalikan kode kesalahan yang terkait dengan updateEmail:completion:
dan updatePassword:completion:
di FIRUser
.
batalkan tautanDariProvider:selesai:
Kode | Berarti |
---|
FIRAuthErrorCodeNoSuchProvider | Menunjukkan upaya untuk memutuskan tautan penyedia yang tidak tertaut ke akun. |
FIRAuthErrorCodeRequiresRecentLogin | Memperbarui email adalah operasi sensitif keamanan yang memerlukan login terbaru dari pengguna. Kesalahan ini menunjukkan bahwa pengguna belum cukup lama masuk. Untuk mengatasinya, autentikasi ulang pengguna dengan menjalankan reauthenticateWithCredential:completion: pada FIRUser . |
sendEmailVerificationWithCompletion:
Kode | Berarti |
---|
FIRAuthErrorCodeUserNotFound | Menunjukkan akun pengguna tidak ditemukan. |
hapusDenganPenyelesaian:
Kode | Berarti |
---|
FIRAuthErrorCodeRequiresRecentLogin | Menghapus akun pengguna adalah operasi sensitif keamanan yang memerlukan login terbaru dari pengguna. Kesalahan ini menunjukkan bahwa pengguna belum cukup lama masuk. Untuk mengatasinya, autentikasi ulang pengguna dengan menjalankan reauthenticateWithCredential:completion: pada FIRUser . |