Biometric
| Update Terbaru | Rilis Stabil | Kandidat Rilis | Rilis Beta | Rilis Alfa |
|---|---|---|---|---|
| 20 Mei 2025 | 1.1.0 | - | - | 1.4.0-alpha04 |
Mendeklarasikan dependensi
Untuk menambahkan dependensi pada Biometric, Anda harus menambahkan repositori Maven Google ke project Anda. Baca repositori Maven Google untuk mengetahui informasi selengkapnya.
Tambahkan dependensi untuk artefak yang diperlukan dalam file build.gradle bagi aplikasi atau modul Anda:
Groovy
dependencies { // Java language implementation implementation "androidx.biometric:biometric:1.1.0" // Kotlin implementation "androidx.biometric:biometric-ktx:1.4.0-alpha02" }
Kotlin
dependencies { // Java language implementation implementation("androidx.biometric:biometric:1.1.0") // Kotlin implementation("androidx.biometric:biometric:1.4.0-alpha02") }
Untuk mengetahui informasi dependensi selengkapnya, lihat Menambahkan Dependensi Build.
Masukan
Masukan Anda membantu meningkatkan kualitas Jetpack. Beri tahu kami jika Anda menemukan masalah baru atau mempunyai masukan untuk meningkatkan kualitas library ini. Harap periksa masalah yang sudah diketahui dalam library ini sebelum membuat laporan baru. Anda dapat memberikan suara untuk masalah yang sudah diketahui dengan mengklik tombol bintang.
Lihat dokumentasi Issue Tracker untuk informasi selengkapnya.
Versi 1.4
Versi 1.4.0-alpha04
20 Mei 2025
androidx.biometric:biometric:1.4.0-alpha04 dirilis. Versi 1.4.0-alpha04 berisi commit ini.
Fitur Baru
- Selalu gunakan
KeyguardManagerAPI secara internal untuk aplikasi Wear (I9b7fd)
Perubahan API
- Menambahkan bit pengautentikasi dengan hak istimewa
IDENTITY_CHECK(I706bb)
Versi 1.4.0-alpha03
26 Maret 2025
androidx.biometric:biometric:1.4.0-alpha03 dirilis. Versi 1.4.0-alpha03 berisi commit ini.
Fitur Baru
- Memperkenalkan
registerForAuthenticationResult()API titik entri autentikasi baru untuk menggantikan modulandroidx.biometric:biometric-ktxdanandroidx.BiometricPrompt. API baru ini dibuat berdasarkan Activity Result API, dan memberikan kompatibilitas yang lancar dengan pengembangan Kotlin dan Java.
Perubahan API
- Mengganti nama
ERROR_MORE_OPTIONS_BUTTONmenjadiERROR_CONTENT_VIEW_MORE_OPTIONS_BUTTON(I71d07) - Tambahkan anotasi
@DeprecateduntukIdentityCredentialagar tetap konsisten dengan framework. (I6ac90, b/140252778, b/217942278, b/251211046, b/239955609) - [1/3] Menghapus library biometric.auth dan kotlin, yang akan didesain ulang. (I2f67c)
- [2/3] Tambahkan
AuthenticationRequestsebagai input autentikasi danAuthenticationResultsebagai jenis hasil autentikasi. Ada dua jenisAuthenticationRequest, dengan builder. (I50fd9)BiometricRequestuntuk autentikasi biometrik denganStrengthyang berbeda danFallbackopsional.CredentialRequestuntuk autentikasi kredensial perangkat saja.
- [3/3] Menambahkan API pola hasil aktivitas baru untuk modul biometrik. Secara khusus, tambahkan API pendaftaran yang disebut
registerForAuthenticationResult(), yang mendaftarkanAuthenticationResultCallbackdanonAuthenticationFailedCallbackopsional, dan menghasilkanAuthenticationResultLauncheruntuk memulai autentikasi dengan semua input. (I2b06e)
Perbaikan Bug
- Library ini kini menggunakan anotasi nullness JSpecify, yang merupakan penggunaan jenis. Developer Kotlin harus menggunakan argumen compiler berikut untuk menerapkan penggunaan yang benar:
-Xjspecify-annotations=strict(ini adalah default yang dimulai dengan compiler Kotlin versi 2.1.0). (Ib49b4, b/326456246) - Memperbaiki masalah tidak dapat membuat instance fragmen
androidx.biometric.FingerprintDialogFragment. (I51c4a, b/181805603) - Memperbaiki masalah saat
BiometricPrompttidak ditutup saat tombol layar utama perangkat ditekan. (I8c393, I0ca8c, b/149770989) - Memperbaiki inkonsistensi kode error untuk menonaktifkan autentikasi aplikasi biometrik di API 34/35. (Ice99d, b/386918213)
- Terapkan penerapan biometrik yang kuat di perangkat lama ke pengautentikasi gabungan juga. (Ibb853, I5cfb3, b/257670132)
Versi 1.4.0-alpha02
7 Agustus 2024
androidx.biometric:biometric:1.4.0-alpha02 dan androidx.biometric:biometric-ktx:1.4.0-alpha02 dirilis. Versi 1.4.0-alpha02 berisi commit ini.
Fitur Baru
PromptContentViewmemungkinkan developer menampilkan tampilan konten kustom sebagai opsi tambahan tampilan teks deskripsi biasa- Logo aplikasi di Perintah Biometrik ditampilkan - ditambahkan secara otomatis menggunakan ikon aplikasi.
Perubahan API
- Menambahkan API untuk mendukung tampilan konten kustom
BiometricPrompt.PromptInfo.Builder#setContentViewBiometricPrompt.PromptInfo#getContentView- Antarmuka
PromptContentView - Class
PromptVerticalListContentView - Class
PromptContentViewWithMoreOptionsButton(khusus aplikasi dengan hak istimewa)
- Menambahkan API untuk mendukung logo (khusus aplikasi dengan hak istimewa)
BiometricPrompt.PromptInfo.Builder#setLogoBitmapBiometricPrompt.PromptInfo.Builder#setLogoResBiometricPrompt.PromptInfo.Builder#setLogoDescriptionBiometricPrompt.PromptInfo#getLogoBitmapBiometricPrompt.PromptInfo#getLogoResBiometricPrompt.PromptInfo#getLogoDescription58c35c6
Perbaikan Bug
- Memperbarui
compileSdkke 35 5dc41be
Versi 1.4.0-alpha01
29 Mei 2024
androidx.biometric:biometric:1.4.0-alpha01 dan androidx.biometric:biometric-ktx:1.4.0-alpha01 dirilis. Versi ini dikembangkan di cabang internal dan menargetkan Android 15 Beta 2.
Perbaikan Bug
- Memperbarui UI agar konsisten dengan perubahan platform di Android 15
Versi 1.2.0
Versi 1.2.0-alpha05
21 September 2022
androidx.biometric:biometric:1.2.0-alpha05 dan androidx.biometric:biometric-ktx:1.2.0-alpha05 dirilis. Versi 1.2.0-alpha05 berisi commit ini.
Perubahan API
- Menambahkan dukungan
CryptoObjectuntukandroid.security.identity.PresentationSessiondi Android 13. (C5f1ec, b/197965513)
Perbaikan Bug
- Menghapus varian resource yang tidak perlu untuk mengurangi ukuran library. (I3601e, b/220178553)
- Memperbaiki masalah untuk
BiometricPromptyang dihosting dalam konteks non-aktivitas. (Ife255)
Versi 1.2.0-alpha04
17 November 2021
androidx.biometric:biometric:1.2.0-alpha04 dan androidx.biometric:biometric-ktx:1.2.0-alpha04 dirilis. Versi 1.2.0-alpha04 berisi commit ini.
Fitur Baru
- Peningkatan dukungan BiometricPrompt untuk fragmen yang dihosting oleh konteks non-aktivitas (I9312b)
Perubahan API
- Menambahkan dukungan untuk BiometricManager.Strings API Android 12 (I12f2d)
- Mengubah kompatibilitas target dan sumber dari Java 7 ke Java 8 (I16129)
Perbaikan Bug
- Memperbaiki masalah pada API 29 yang membuat beberapa perangkat (termasuk emulator) menerima error pembatalan saat dikembalikan ke PIN/pola/sandi. Perhatikan bahwa, untuk beberapa perangkat di API 29, hal ini dapat menyebabkan pengguna diminta memasukkan kunci layar meskipun jika biometrik tersedia dan terdaftar. (b/142740104)
- Memperbaiki masalah pada API 29 yang membuat perangkat tanpa hardware biometrik tidak digantikan dengan benar ke PIN/pola/sandi (b/170517889)
Versi 1.2.0-alpha03
24 Februari 2021
androidx.biometric:biometric:1.2.0-alpha03 dan androidx.biometric:biometric-ktx:1.2.0-alpha03 dirilis. Versi 1.2.0-alpha03 berisi commit ini.
Perubahan API
- Menambahkan penangguhan ekstensi coroutine untuk CredentialAuthPrompt, mirip dengan ekstensi yang ada untuk jenis AuthPrompt lainnya. (I9ac70)
Versi 1.2.0-alpha02
27 Januari 2021
androidx.biometric:biometric:1.2.0-alpha02 dan androidx.biometric:biometric-ktx:1.2.0-alpha02 dirilis. Versi 1.2.0-alpha02 berisi commit ini.
Perubahan API
- Memfaktorkan ulang beberapa kolom
AuthPromptyang sebelumnya ditetapkan melalui builder ke dalam argumen metodestartAuthentication(...). (I18896, b/174098373) - Menambahkan persyaratan API level minimum untuk jenis
AuthPromptdengan dukungan terbatas atau tanpa dukungan di versi Android lama. (I18896) - Menambahkan metode pengambil untuk semua kolom
AuthPromptyang ditetapkan melalui builder. (I18896) - Menambahkan penangguhan ekstensi Kotlin coroutine untuk autentikasi biometrik melalui API
AuthPrompt. Fungsi ini akan menampilkanAuthenticationResultsecara langsung saat berhasil atau menampilkan pengecualian saat error atau gagal (penolakan kredensial). (Iffc9e)
Perbaikan Bug
- Memperbaiki masalah saat
BiometricManager.canAuthenticate(int)terkadang menampilkan kode status yang salah untuk perangkat dengan sensor sidik jari di Android 10 (API level 29). (I72420, b/176921662) - Memperbaiki masalah
BiometricManager.canAuthenticate(int)yang akan menampilkan kode status yang salah untuk perangkat tanpa hardware biometrik dan tanpa PIN, pola, atau sandi yang terdaftar di Android 10 (level API 29) dan versi SDK sebelumnya. (I79b7d, b/174505824) - Memperbaiki kebocoran memori yang akan terjadi saat
BiometricPromptdihosting di fragmen dengan siklus proses yang lebih pendek daripada aktivitas terkait. (I70864, b/167014923)
Versi 1.2.0-alpha01
2 Desember 2020
androidx.biometric:biometric:1.2.0-alpha01 dan androidx.biometric:biometric-ktx:1.2.0-alpha01 dirilis. Versi 1.2.0-alpha01 berisi commit ini.
Fitur Baru
- Memperkenalkan modul
androidx.biometric:biometric-ktx, yang menambahkan API dan ekstensi khusus Kotlin selainandroidx.biometric:biometric.
Perubahan API
- Menambahkan
AuthPromptAPI baru untuk membuatBiometricPromptdan melakukan autentikasi. API ini tidak memerlukanBiometricPromptdibuat dalam callback siklus proses awal, sepertionCreate. (I19022) - Menambahkan ekstensi Kotlin ke
FragmentdanFragmentActivityuntukAuthPromptAPI baru. (Iaf98c)
Versi 1.1.0
Versi 1.1.0
27 Januari 2021
androidx.biometric:biometric:1.1.0 dirilis. Versi 1.1.0 berisi commit ini.
Perubahan utama sejak versi 1.0.0
- Menambahkan dukungan kompatibilitas mundur untuk fitur dan update API autentikasi biometrik baru yang diperkenalkan di Android 11.
- Secara signifikan mengurangi ukuran jejak library aplikasi (dalam beberapa kasus hingga >100 KB).
- Menghapus berbagai sumber kebocoran memori yang sebelumnya disebabkan oleh library.
- Memperbaiki kegagalan verifikasi class yang dapat memengaruhi performa pada versi Android lama.
- Membuat berbagai peningkatan tambahan pada stabilitas dan perilaku library.
Versi 1.1.0-rc01
11 November 2020
androidx.biometric:biometric:1.1.0-rc01 dirilis. Versi 1.1.0-rc01 berisi commit ini.
Perbaikan Bug
- Memperbaiki masalah pada beberapa perangkat yang menyebabkan tindakan tertentu (mengautentikasi, membatalkan, dsb.) terkadang menampilkan
NullPointerException. (b/151316421) - Memperbaiki masalah yang menyebabkan beberapa perangkat Pixel melaporkan status yang salah saat menggunakan
BiometricManager#canAuthenticate(int)untuk memeriksa biometrik Class 3 di Android 10. (b/170406186)
Versi 1.1.0-beta01
1 Oktober 2020
androidx.biometric:biometric:1.1.0-beta01 dirilis. Versi 1.1.0-beta01 berisi commit ini.
Fitur Baru
- Secara signifikan mengurangi jejak ukuran APK library (dalam beberapa kasus dikompresi hingga >100 KB) dengan mengganti animasi dialog dengan aset statis pada Android 8.1 dan versi sebelumnya. (I4844e)
BiometricPromptkini secara otomatis melakukan penggantian ke autentikasi kredensial perangkat (jika diizinkan) di semua versi Android yang didukung saat autentikasi biometrik terkunci. (b/149579143)
Perbaikan Bug
- Memperbaiki masalah saat
BiometricPromptmenyebabkan error pada beberapa perangkat Android 9 tanpa sensor sidik jari. (b/151443237) - Memperbaiki potensi
NullPointerExceptiondalamFingerprintDialogFragment(b/167951429) - Memperbaiki masalah saat jenis
CryptoObjectyang salah digunakan untuk pemanggilan metode reflektif diBiometricManager. (b/165824669) - Memperbaiki masalah saat
BiometricPromptditampilkan lagi segera setelah penutupan yang menyebabkan perintah baru ditutup secara otomatis di beberapa perangkat Android 10. (b/157783075) - Memperbaiki kebocoran memori yang terkait dengan penggunaan
FingerprintManagerCompat. (b/165840273) - Memperbaiki masalah UI dialog sidik jari yang disembunyikan atau ditampilkan secara tidak benar di beberapa perangkat Android 9. (b/154868505, b/148350291)
Versi 1.1.0-alpha02
19 Agustus 2020
androidx.biometric:biometric:1.1.0-alpha02 dirilis. Versi 1.1.0-alpha02 berisi commit ini.
Fitur Baru
BiometricManager#canAuthenticate()sekarang dapat menampilkanBIOMETRIC_STATUS_UNKNOWNuntuk menunjukkan bahwa pengguna mungkin masih dapat mengautentikasi, atauBIOMETRIC_ERROR_UNSUPPORTEDuntuk menunjukkan bahwa kombinasi pengautentikasi yang diberikan tidak didukung oleh perangkat.BiometricPrompt#authenticate()kini dapat digunakan untuk autentikasi kredensial perangkat denganCryptoObjectterkait hanya di Android 11 (API level 30) dan versi yang lebih tinggi.
Perubahan API
- Menjadikan penyediaan
Executoreksplisit saat membuat instanceBiometricPromptbersifat opsional. (I6bb8a) - Menambahkan metode
BiometricManager#canAuthenticate(int)dari Android 11. (Ia3f1c) - Mengupdate
BiometricPromptguna menambahkan dukungan untuk konstantaBiometricManager.Authenticatorsdari Android 11. (I39bd8) - Menambahkan metode
BiometricPrompt.AuthenticationResult#getAuthenticationType()dari Android 11. (Icfad5) - Menambahkan kode error
BiometricPrompt.ERROR_SECURITY_UPDATE_REQUIREDdari Android 11. (I6610b) - Mengupdate
BiometricPrompt.CryptoObjectuntuk mendukungIdentityCredentialhanya di Android 11 (API level 30) dan versi yang lebih tinggi. (I1d9f6)
Perbaikan Bug
- Memperbaiki kebocoran memori yang dilaporkan oleh LeakCanary di
BiometricFragmentdanBiometricViewModel. (b/144919472) - Memastikan bahwa
BiometricViewModeltidak akan lagi memanggilMutableLiveData#setValue()dari thread latar belakang. (b/159983244) - Memperbaiki masalah saat
BiometricPrompttidak menangani penguncian sementara dengan benar di beberapa API level. (9acfce9) - Memperbaiki masalah saat
BiometricPromptakan menampilkan kode error yang salah untuk perangkat yang tidak diamankan dengan kredensial kunci layar di beberapa API level. (b/148626482) - Memperbaiki masalah saat
BiometricManagerdanBiometricPromptakan menampilkan kode error yang salah untuk perangkat tanpa implementasi keyguard di beberapa API level. (891c6e0)
Versi 1.1.0-alpha01
24 Juni 2020
androidx.biometric:biometric:1.1.0-alpha01 dirilis. Versi 1.1.0-alpha01 berisi commit ini.
Fitur Baru
- Memfaktorkan ulang implementasi library internal untuk mengatasi sumber potensial kebocoran memori dan perilaku yang tidak diinginkan lainnya:
- Fragmen internal kini berbagi dan mempertahankan data menggunakan
ViewModelyang terikat pada siklus proses aktivitas aplikasi klien. - Autentikasi kredensial perangkat sebelum Android 10 (API level 29) tidak lagi memulai aktivitas transparan dalam aplikasi klien.
- Fragmen internal kini berbagi dan mempertahankan data menggunakan
Perbaikan Bug
- Menyelesaikan peringatan penghentian yang terkait dengan penggunaan
FingerprintManagerCompat. (b/142967618) - Mengubah cara metode platform yang dibatasi SDK dipanggil untuk menghindari masalah verifikasi class pada versi Android yang lebih lama. (94beb4b)
- Dependensi Gradle yang bukan bagian dari API publik tidak lagi diekspor oleh library. (f289d9e)
Versi 1.0.1
Versi 1.0.1
18 Desember 2019
androidx.biometric:biometric:1.0.1 dirilis. Versi 1.0.1 berisi commit ini.
Perbaikan bug
- Mengembangkan solusi penggantian sidik jari yang sudah ada untuk autentikasi berbasis kripto ke vendor terpengaruh yang diketahui, sekaligus membatasinya ke API 28 (b/143361271)
- Memperbaiki masalah di perangkat tertentu yang menyebabkan dialog biometrik ditampilkan di bawah overlay sistem (b/143230260)
- Memperbaiki beberapa masalah dengan
setDeviceCredentialAllowed(true)(b/143091227, b/143097321, b/143653944) - Memperbaiki masalah pada versi Android tertentu yang menyebabkan
onAuthenticationSuccesstidak selalu dipanggil setelah pengguna mengonfirmasi kredensial perangkatnya (b/145232806 ) - Memperbaiki masalah pada versi Android tertentu yang menyebabkan
onAuthenticationErrortidak selalu dipanggil saat perintah ditutup pada rotasi b/145230042 ) - Memperbaiki masalah pada versi Android tertentu yang menyebabkan perintah tidak ditutup saat menerima kode error tertentu (b/143683687)
- Memperbaiki potensi
NullPointerExceptiondalamBiometricFragment(b/142599311)
Versi 1.0.0
Versi 1.0.0
7 November 2019
androidx.biometric:biometric:1.0.0 dirilis tanpa perubahan sejak 1.0.0-rc02. Versi 1.0.0 berisi commit ini.
Fitur utama versi 1.0.0
- Versi kompatibilitas dari API
BiometricPromptdanBiometricManager, seperti yang diimplementasikan di Android 10, dengan dukungan fitur lengkap hingga Android 6.0 (API 23) - Pengelolaan siklus proses bawaan untuk
BiometricPromptdalamFragmentatauFragmentActivity - Penanganan khusus untuk perangkat yang diketahui salah menyajikan biometrik yang lemah selama autentikasi berbasis kripto
Versi 1.0.0-rc02
23 Oktober 2019
androidx.biometric:biometric:1.0.0-rc02 dirilis. Versi 1.0.0-rc02 berisi commit ini.
Perbaikan bug
- Menambahkan solusi untuk perangkat tertentu yang diketahui salah memberikan biometrik yang lemah saat autentikasi berbasis kripto dijalankan pada API versi 28 dan 29 (b/142150327)
Versi 1.0.0-rc01
9 Oktober 2019
androidx.biometric:biometric:1.0.0-rc01 dirilis. Versi 1.0.0-rc01 berisi commit ini.
Perbaikan bug
- Memperbaiki potensi error terkait
FingerprintDialogFragmentsaat menutupnya selagi layar diputar (b/141356362) - Memperbaiki masalah saat menerima
AuthenticationResultnull dari API framework dapat menyebabkan error (b/138862251) - Memperbaiki error yang disebabkan oleh ditolaknya
BiometricPromptsetelahonSaveInstanceState()(b/138825362, b/140447194 )
Versi 1.0.0-beta02
18 September 2019
androidx.biometric:biometric:1.0.0-beta02 dirilis. Versi 1.0.0-beta02 berisi commit ini.
Perbaikan bug
- Memperbaiki masalah terkait dukungan kredensial perangkat di versi
1.0.0-beta01 - Menghapus dependensi Java 8 dan beralih ke menggunakan Java 7 sebagai dependensi (b/140508526)
FingerprintHelperFragmentsekarang menampilkanERROR_HW_NOT_PRESENTdengan benar saat tidak ada hardware sidik jari yang terdeteksi (b/140427586)
Versi 1.0.0-beta01
29 Agustus 2019
androidx.biometric:biometric:1.0.0-beta01 dirilis. Versi 1.0.0-beta01 berisi commit ini.
Fitur baru
Kami telah memperkenalkan konstruktor kedua untuk BiometricPrompt yang memungkinkannya untuk di-host di Fragment (bukan di konstruktor yang ada, yang memerlukan FragmentActivity).
Kami juga menghadirkan fungsionalitas berikut dari Android 10 ke library Biometric AndroidX:
BiometricManager#canAuthenticateBiometricPrompt.PromptInfo#setConfirmationRequiredBiometricPrompt.PromptInfo#setDeviceCredentialAllowed
Di Android 10, library ini akan memanggil metode yang sesuai dari API platform. Di API level yang lebih lama, library ini akan mengemulasikan perilaku.
Perubahan API
- Menambahkan konstruktor khusus fragmen untuk perintah biometrik (b/131980596)
- Lihat bagian “Fitur baru” di atas.
Perbaikan bug
- Menambahkan dukungan kredensial perangkat BiometricPrompt untuk L+
- Memperbaiki BiometricPrompt untuk menggunakan konstanta error publik (b/137788194)
- Memperbaiki
NullPointerExceptiondalamBiometricPrompt.onAttach()(b/136103103) - Mengubah perilaku untuk tidak mengizinkan dibatalkannya BiometricPrompt oleh peristiwa sentuh di luar perintah (b/135684487)
- Memperbaiki error onAuthenticationError saat nilai error null ditampilkan dalam Kotlin (b/128350861)
- FingerprintDialogFragment sekarang dapat ditata gayanya (b/127878106)
- FingerprintDialog sekarang dapat di-scroll (b/126367887)
- Memperbaiki bug saat memutar dialog biometrik akan memunculkan
IllegalStateException(b/124153656 ), (b/123811924) - Memperbaiki perilaku yang tidak konsisten di API Level 23 hingga 27. (b/124066957)
- Memperbaiki masalah saat Dialog Login Sidik Jari membaca teks yang salah menggunakan Talkback. (b/123572331)
Versi 1.0.0-alpha04
3 April 2019
androidx.biometric:biometric:1.0.0-alpha04 dirilis. Commit yang disertakan dalam versi ini dapat dilihat di sini.
Perbaikan bug
- Memperbaiki fragmen Biometric yang tidak dibereskan dalam semua kasus. (b/121117380)
- Memperbaiki
BiometricPromptyang hanya mengizinkan satu instanceBiometricPrompt.AuthenticationCallback(b/123857949) - Memperbaiki perilaku error
BiometricPromptyang tidak konsisten antara versi sistem dan versi compat. (b/123572326) - Memperbaiki callback
onAuthenticationError()dengan@NotNull errStringyang menyebabkanNullPointerExceptionsaat runtime (b/123167217) - Memperbaiki Error tombol Batal
androidx.BiometricPrompt(b/122054485) - Memperbaiki judul/deskripsi
androidx.biometric.PromptInfoyang tidak berubah di Android P (b/122856773)
Versi 1.0.0-alpha03
17 Desember 2018
Perbaikan bug
- Memperbaiki masalah terkait fragmen
- Pada perangkat Android O dan yang lebih lama, error penguncian langsung ditampilkan agar konsisten dengan perangkat P dan yang lebih baru