Biometrico
Aggiornamento più recente | Release stabile | Candidato per la release | Versione beta | Release alpha |
---|---|---|---|---|
29 maggio 2024 | 1.1.0 | - | - | 1.4.0-alpha01 |
Dichiarazione delle dipendenze
Per aggiungere una dipendenza a Biometric, devi aggiungere il Repository Maven di Google al tuo progetto. Per ulteriori informazioni, consulta il Repository Maven di Google.
Aggiungi le dipendenze per gli artefatti necessari nel file build.gradle
per
l'app o il modulo:
Trendy
dependencies { // Java language implementation implementation "androidx.biometric:biometric:1.1.0" // Kotlin implementation "androidx.biometric:biometric-ktx:1.4.0-alpha01" }
Kotlin
dependencies { // Java language implementation implementation("androidx.biometric:biometric:1.1.0") // Kotlin implementation("androidx.biometric:biometric:1.4.0-alpha01") }
Per ulteriori informazioni sulle dipendenze, consulta Aggiungere dipendenze build.
Feedback
Il tuo feedback ci aiuta a migliorare Jetpack. Facci sapere se rilevi nuovi problemi o hai idee per migliorare la libreria. Dai un'occhiata ai problemi esistenti in questa libreria prima di crearne una nuova. Puoi aggiungere il tuo voto a un problema esistente facendo clic sul pulsante a forma di stella.
Per ulteriori informazioni, consulta la documentazione di Issue Tracker.
Versione 1.4
Versione 1.4.0-alpha01
29 maggio 2024
androidx.biometric:biometric:1.4.0-alpha01
e androidx.biometric:biometric-ktx:1.4.0-alpha01
vengono rilasciati. Questa versione è sviluppata in un ramo interno ed è destinata ad Android 15 Beta 2.
Correzioni di bug
- Aggiorna la UI in modo che sia coerente con le modifiche della piattaforma in Android 15
Versione 1.2.0
Versione 1.2.0-alpha05
21 settembre 2022
androidx.biometric:biometric:1.2.0-alpha05
e androidx.biometric:biometric-ktx:1.2.0-alpha05
vengono rilasciati. La versione 1.2.0-alpha05 contiene questi commit.
Modifiche alle API
- Aggiunto il supporto
CryptoObject
perandroid.security.identity.PresentationSession
in Android 13. (C5f1ec, b/197965513).
Correzioni di bug
- Sono state rimosse le varianti della risorsa non necessarie per ridurre le dimensioni della libreria. (I3601e, b/220178553)
- Risolto il problema relativo a
BiometricPrompt
ospitato in contesti non attivi. (Ife255).
Versione 1.2.0-alpha04
17 novembre 2021
androidx.biometric:biometric:1.2.0-alpha04
e androidx.biometric:biometric-ktx:1.2.0-alpha04
vengono rilasciati. La versione 1.2.0-alpha04 contiene questi commit.
Nuove funzionalità
- Supporto migliorato del prompt biometrico per i frammenti ospitati da contesti non attivi (I9312b)
Modifiche alle API
- Aggiunto il supporto per l'API BiometricManager.Strings per Android 12 (I12f2d)
- Compatibilità di destinazione e origine modificata da Java 7 a Java 8 (I16129)
Correzioni di bug
- Risolto il problema dell'API 29 per cui alcuni dispositivi (inclusi gli emulatori) ricevevano un errore di annullamento quando si selezionavano PIN/sequenza/password. Tieni presente che, per alcuni dispositivi con API 29, questo potrebbe causare la richiesta di blocco schermo all'utente anche se un dato biometrico è disponibile e registrato. (b/142740104)
- Risolto il problema nell'API 29 per cui i dispositivi senza hardware biometrico non tornavano correttamente su PIN/sequenza/password (b/170517889)
Versione 1.2.0-alpha03
24 febbraio 2021
androidx.biometric:biometric:1.2.0-alpha03
e androidx.biometric:biometric-ktx:1.2.0-alpha03
vengono rilasciati. La versione 1.2.0-alpha03 contiene questi commit.
Modifiche alle API
- Sono state aggiunte la sospensione delle estensioni coroutine per CredentialAuthPrompt simili a quelle esistenti per altri tipi di AuthPrompt. (I9ac70)
Versione 1.2.0-alpha02
27 gennaio 2021
androidx.biometric:biometric:1.2.0-alpha02
e androidx.biometric:biometric-ktx:1.2.0-alpha02
vengono rilasciati. La versione 1.2.0-alpha02 contiene questi commit.
Modifiche alle API
- È stato eseguito il refactoring di alcuni campi
AuthPrompt
precedentemente impostati tramite un builder negli argomenti del metodostartAuthentication(...)
. (I18896, b/174098373) - Sono stati aggiunti requisiti minimi per i livelli API per i tipi
AuthPrompt
con supporto limitato o assente sulle versioni precedenti di Android. (I18896) - Sono stati aggiunti metodi getter per tutti i campi
AuthPrompt
impostati tramite un builder. (I18896) - È stata aggiunta la sospensione delle estensioni Kotlin della coroutine per l'autenticazione biometrica tramite le API di
AuthPrompt
. Queste funzioni restituirannoAuthenticationResult
direttamente in caso di esito positivo oppure genereranno un'eccezione in caso di errore o errore (rifiuto credenziali). (Iffc9e).
Correzioni di bug
- Risolto il problema per cui a volte
BiometricManager.canAuthenticate(int)
restituisceva un codice di stato errato per un dispositivo con sensore di impronte digitali su Android 10 (livello API 29). (I72420, b/176921662) - Risolto il problema per cui
BiometricManager.canAuthenticate(int)
restituiva un codice di stato errato per un dispositivo senza hardware biometrico e senza PIN, sequenza o password registrati su Android 10 (livello API 29) e versioni precedenti dell'SDK. (I79b7d, b/174505824) - Risolto il problema di perdita di memoria che si verificava quando
BiometricPrompt
era ospitato in un frammento con un ciclo di vita più breve rispetto all'attività associata. (I70864, b/167014923)
Versione 1.2.0-alpha01
2 dicembre 2020
androidx.biometric:biometric:1.2.0-alpha01
e androidx.biometric:biometric-ktx:1.2.0-alpha01
vengono rilasciati. La versione 1.2.0-alpha01 contiene questi commit.
Nuove funzionalità
- È stato introdotto il modulo
androidx.biometric:biometric-ktx
, in cui vengono aggiunte estensioni e API specifiche di Kotlin oltre aandroidx.biometric:biometric
.
Modifiche alle API
- Sono state aggiunte nuove API
AuthPrompt
per creare unBiometricPrompt
e eseguire l'autenticazione. Queste API non richiedono la creazione diBiometricPrompt
in un callback iniziale del ciclo di vita, ad esempioonCreate
. (I19022) - Sono state aggiunte estensioni Kotlin a
Fragment
eFragmentActivity
per le nuove APIAuthPrompt
. (Iaf98c).
Versione 1.1.0
Versione 1.1.0
27 gennaio 2021
androidx.biometric:biometric:1.1.0
viene rilasciato. La versione 1.1.0 contiene questi commit.
Importanti modifiche dalla versione 1.0.0
- Aggiunto il supporto compatibile con le versioni precedenti per le nuove funzionalità di autenticazione biometrica e gli aggiornamenti delle API introdotti in Android 11.
- Riduzione significativa delle dimensioni della libreria dell'app (in alcuni casi > 100 kB).
- Sono state rimosse diverse origini di fughe di memoria causate in precedenza dalla libreria.
- Sono stati risolti gli errori di verifica del corso che potrebbero influire sulle prestazioni nelle versioni precedenti di Android.
- Apportati diversi miglioramenti aggiuntivi alla stabilità e al comportamento della raccolta.
Versione 1.1.0-rc01
11 novembre 2020
androidx.biometric:biometric:1.1.0-rc01
viene rilasciato. La versione 1.1.0-rc01 contiene questi commit.
Correzioni di bug
- Risolto il problema su alcuni dispositivi per cui determinate azioni (autenticazione, annullamento e così via) a volte generavano un'
NullPointerException
. (b/151316421) - Risolto un problema per cui alcuni dispositivi Pixel segnalavano lo stato errato quando si utilizzava
BiometricManager#canAuthenticate(int)
per controllare la biometria di Classe 3 su Android 10. (b/170406186)
Versione 1.1.0-beta01
1° ottobre 2020
androidx.biometric:biometric:1.1.0-beta01
viene rilasciato. La versione 1.1.0-beta01 contiene questi commit.
Nuove funzionalità
- Ha ridotto notevolmente le dimensioni degli APK della raccolta (in alcuni casi compressi di oltre 100 kB) sostituendo le animazioni delle finestre di dialogo con asset statici su Android 8.1 e versioni precedenti. (I4844e).
- Ora
BiometricPrompt
torna automaticamente all'autenticazione delle credenziali del dispositivo (se consentita) su tutte le versioni di Android supportate quando l'autenticazione biometrica è bloccata. (b/149579143)
Correzioni di bug
- Risolto un problema per cui
BiometricPrompt
causava un arresto anomalo su alcuni dispositivi Android 9 privi di sensore di impronte digitali. (b/151443237) - È stato corretto un potenziale
NullPointerException
inFingerprintDialogFragment
. (b/167951429) - Risolto un problema per cui è stato utilizzato il tipo
CryptoObject
errato per una chiamata a un metodo riflettente inBiometricManager
. (b/165824669) - Risolto il problema per cui mostrare di nuovo
BiometricPrompt
poco dopo l'eliminazione causava la chiusura automatica della nuova richiesta su alcuni dispositivi Android 10. (b/157783075) - Risolte le perdite di memoria relative all'utilizzo di
FingerprintManagerCompat
. (b/165840273) - Sono stati risolti i problemi relativi alla UI della finestra di dialogo dell'impronta che veniva nascosta o mostrata in modo errato su alcuni dispositivi Android 9. (b/154868505, b/148350291)
Versione 1.1.0-alpha02
19 agosto 2020
androidx.biometric:biometric:1.1.0-alpha02
viene rilasciato. La versione 1.1.0-alpha02 contiene questi commit.
Nuove funzionalità
BiometricManager#canAuthenticate()
ora potrebbe restituireBIOMETRIC_STATUS_UNKNOWN
per indicare che l'utente potrebbe essere ancora in grado di autenticarsi oBIOMETRIC_ERROR_UNSUPPORTED
per indicare che una determinata combinazione di autenticatore non è supportata dal dispositivo.- Ora è possibile usare
BiometricPrompt#authenticate()
per l'autenticazione delle credenziali del dispositivo con unCryptoObject
associato solo su Android 11 (livello API 30) e versioni successive.
Modifiche alle API
- È stato reso facoltativo fornire un valore
Executor
esplicito durante la creazione di un'istanza diBiometricPrompt
. (I6bb8a). - Metodo
BiometricManager#canAuthenticate(int)
aggiunto da Android 11. (Ia3f1c). - È stato aggiornato l'elemento
BiometricPrompt
per aggiungere il supporto delle costantiBiometricManager.Authenticators
di Android 11. (I39bd8) - Metodo
BiometricPrompt.AuthenticationResult#getAuthenticationType()
aggiunto da Android 11. (Icfad5). - È stato aggiunto il codice di errore
BiometricPrompt.ERROR_SECURITY_UPDATE_REQUIRED
da Android 11. (I6610b) - Aggiornamento di
BiometricPrompt.CryptoObject
per supportareIdentityCredential
su Android 11 (livello API 30) e versioni successive solo. (I1d9f6)
Correzioni di bug
- Risolte le perdite di memoria segnalate da LeakCanary in
BiometricFragment
eBiometricViewModel
. (b/144919472) - Verificato che
BiometricViewModel
non chiamerà piùMutableLiveData#setValue()
da un thread in background. (b/159983244) - Risolto il problema per cui
BiometricPrompt
non gestiva correttamente il blocco temporaneo su alcuni livelli API. (9acfce9). - Risolto il problema per cui
BiometricPrompt
restituiva il codice di errore errato per un dispositivo non protetto con credenziali di blocco schermo su alcuni livelli API. (b/148626482) - Risolto il problema per cui
BiometricManager
eBiometricPrompt
restituivano i codici di errore sbagliati per un dispositivo senza implementazione del blocco tastiera su alcuni livelli API. (891c6e0).
Versione 1.1.0-alpha01
24 giugno 2020
androidx.biometric:biometric:1.1.0-alpha01
viene rilasciato. La versione 1.1.0-alpha01 contiene questi commit.
Nuove funzionalità
- È stato eseguito il refactoring dell'implementazione della libreria interna per risolvere potenziali fonti di perdite di memoria e altri comportamenti indesiderati:
- I frammenti interni ora condividono e mantengono i dati utilizzando un parametro
ViewModel
legato al ciclo di vita dell'attività dell'applicazione client. - L'autenticazione delle credenziali del dispositivo precedente ad Android 10 (livello API 29) non avvia più un'attività trasparente all'interno dell'applicazione client.
- I frammenti interni ora condividono e mantengono i dati utilizzando un parametro
Correzioni di bug
- Sono stati risolti gli avvisi di ritiro relativi all'utilizzo di
FingerprintManagerCompat
. (b/142967618) - È stata modificata la modalità di chiamata dei metodi della piattaforma controllati dall'SDK per evitare problemi di verifica dei corsi nelle versioni precedenti di Android. (94beb4b).
- Le dipendenze Gradle che non fanno parte dell'API pubblica non vengono più esportate dalla libreria. (f289d9e).
Versione 1.0.1
Versione 1.0.1
18 dicembre 2019
androidx.biometric:biometric:1.0.1
viene rilasciato. La versione 1.0.1 contiene questi commit.
Correzioni di bug
- Estensione ai fornitori noti interessati della soluzione alternativa di riserva delle impronte digitali per l'autenticazione basata su criptovalute, limitatamente all'API 28 (b/143361271)
- Risolto un problema su alcuni dispositivi in cui la finestra di dialogo biometrica veniva mostrata sotto un overlay di sistema (b/143230260)
- Risolti diversi problemi relativi a
setDeviceCredentialAllowed(true)
(b/143091227, b/143097321, b/143653944) - Risolto il problema in alcune versioni di Android per cui
onAuthenticationSuccess
non veniva sempre chiamato dopo che l'utente aveva confermato la credenziale del dispositivo (b/145232806) - Risolto il problema in alcune versioni di Android per cui
onAuthenticationError
non veniva sempre chiamato quando la richiesta veniva ignorata durante la rotazione (b/145230042) - Risolto il problema in alcune versioni di Android per cui la richiesta non veniva ignorata quando ricevevano determinati codici di errore (b/143683687)
- Risolto un potenziale
NullPointerException
inBiometricFragment
(b/142599311)
Versione 1.0.0
Versione 1.0.0
7 novembre 2019
androidx.biometric:biometric:1.0.0
viene rilasciato senza modifiche dal giorno 1.0.0-rc02
. La versione 1.0.0 contiene questi commit.
Funzionalità principali della versione 1.0.0
- Versione compatibile con le API
BiometricPrompt
eBiometricManager
, implementata in Android 10, con supporto completo delle funzionalità fino ad Android 6.0 (API 23) - Gestione integrata del ciclo di vita per
BiometricPrompt
inFragment
oFragmentActivity
- Trattamento speciale per i dispositivi che notano erroneamente la presenza di dati biometrici deboli durante l’autenticazione basata su criptovalute
Versione 1.0.0-rc02
23 ottobre 2019
androidx.biometric:biometric:1.0.0-rc02
viene rilasciato. La versione 1.0.0-rc02 contiene questi commit.
Correzioni di bug
- È stata aggiunta una soluzione alternativa per alcuni dispositivi che è noto che forniscano in modo errato un dato biometrico debole quando l'autenticazione basata su criptovalute viene richiamata nelle versioni 28 e 29 delle API (b/142150327)
Versione 1.0.0-rc01
9 ottobre 2019
androidx.biometric:biometric:1.0.0-rc01
viene rilasciato. La versione 1.0.0-rc01 contiene questi commit.
Correzioni di bug
- Risolto un possibile arresto anomalo con
FingerprintDialogFragment
causato dalla chiusura del dispositivo mentre lo schermo è in rotazione (b/141356362) - Risolto un problema per cui la ricezione di un valore
AuthenticationResult
nullo dall'API framework potrebbe causare un arresto anomalo (b/138862251) - Arresti anomali corretti causati dalla chiusura di
BiometricPrompt
dopo il giornoonSaveInstanceState()
(b/138825362, b/140447194)
Versione 1.0.0-beta02
18 settembre 2019
androidx.biometric:biometric:1.0.0-beta02
viene rilasciato. La versione 1.0.0-beta02 contiene questi commit.
Correzioni di bug
- Sono stati risolti i problemi relativi al supporto delle credenziali del dispositivo nella versione
1.0.0-beta01
- Rimosse le dipendenze Java 8 e passaggio a Java 7 che dipende da Java (b/140508526)
FingerprintHelperFragment
ora genera correttamenteERROR_HW_NOT_PRESENT
quando non viene rilevato alcun hardware per l'impronta (b/140427586)
Versione 1.0.0-beta01
29 agosto 2019
androidx.biometric:biometric:1.0.0-beta01
viene rilasciato. La versione 1.0.0-beta01 contiene questi commit.
Nuove funzionalità
Abbiamo introdotto un secondo costruttore per il prompt biometrico che ne consente l'hosting in un frammento (al contrario del costruttore esistente, che richiede un'attività FragmentActivity).
Siamo inoltre entusiasti di portare le seguenti funzionalità di Android 10 nella libreria biometrica di AndroidX:
BiometricManager#canAuthenticate
BiometricPrompt.PromptInfo#setConfirmationRequired
BiometricPrompt.PromptInfo#setDeviceCredentialAllowed
Su Android 10, la libreria richiama i metodi corrispondenti dall'API Platform. Nei livelli API precedenti, la libreria emulerà il comportamento.
Modifiche alle API
- Aggiunto il costruttore specifico per il frammento per il prompt biometrico (b/131980596)
- Consulta la sezione "Nuove funzionalità" riportata sopra.
Correzioni di bug
- Aggiungi il supporto delle credenziali del dispositivo biometrico per L+
- Correzione del prompt biometrico per utilizzare le costanti di errore pubbliche (b/137788194)
- Correggi
NullPointerException
inBiometricPrompt.onAttach()
(b/136103103) - Comportamento modificato per non consentire l'annullamento del prompt biometrico a causa di un evento di tocco al di fuori del prompt (b/135684487)
- Risolto l'arresto anomalo onAuthenticationError quando in Kotlin viene restituito un valore di errore null (b/128350861)
- FingerprintDialogFragment è ora disponibile per lo stile (b/127878106)
- È ora possibile scorrere FingerprintDialog (b/126367887)
- Risolto il bug per cui la rotazione della finestra di dialogo biometrica genera un valore
IllegalStateException
(b/124153656), (b/123811924) - È stato corretto il comportamento incoerente nei livelli API da 23 a 27. (b/124066957)
- È stato risolto il problema per cui la finestra di dialogo di accesso con l'impronta leggeva un testo errato utilizzando TalkBack. (b/123572331)
Versione 1.0.0-alpha04
3 aprile 2019
androidx.biometric:biometric:1.0.0-alpha04
viene rilasciato. I commit inclusi in questa versione sono disponibili qui.
Correzioni di bug
- I frammenti biometrici corretti non vengono eliminati in tutti i casi. (b/121117380)
- L'
BiometricPrompt
fisso consente una sola istanza diBiometricPrompt.AuthenticationCallback
(b/123857949) - Risolto il comportamento dell'errore
BiometricPrompt
, incoerente tra la versione di sistema e quella di compatibilità. (b/123572326) - Il callback
onAuthenticationError()
corretto con@NotNull errString
causaNullPointerException
in fase di runtime (b/123167217) - Risolto il problema degli arresti anomali del pulsante Annulla di
androidx.BiometricPrompt
(b/122054485) - Titolo/descrizione
androidx.biometric.PromptInfo
corretti non modificati su Android P (b/122856773)
Versione 1.0.0-alpha03
17 dicembre 2018
Correzioni di bug
- Risolti problemi relativi ai frammenti
- Sui dispositivi O e meno recenti, gli errori di blocco vengono restituiti immediatamente per garantire la coerenza con il valore P e superiore.