Biometric
최근 업데이트 | 안정화 버전 | 출시 후보 버전 | 베타 버전 | 알파 버전 |
---|---|---|---|---|
2024년 8월 7일 | 1.1.0 | - | - | 1.4.0-alpha02 |
종속 항목 선언
Biometric의 종속 항목을 추가하려면 프로젝트에 Google Maven 저장소를 추가해야 합니다. 자세한 내용은 Google Maven 저장소를 읽어보세요.
다음과 같이 앱 또는 모듈의 build.gradle
파일에 필요한 아티팩트의 종속 항목을 추가합니다.
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") }
종속 항목에 관한 자세한 내용은 빌드 종속 항목 추가를 참고하세요.
의견
제출하신 의견은 Jetpack을 개선하는 데 도움이 됩니다. 새로운 문제를 발견하거나 라이브러리 개선을 위한 아이디어가 있다면 Google에 알려 주세요. 새 문제를 제출하기 전에 이 라이브러리의 기존 문제를 살펴보시기 바랍니다. 별표 버튼을 클릭하여 기존 문제에 투표할 수 있습니다.
자세한 내용은 Issue Tracker 문서를 참고하세요.
버전 1.4
버전 1.4.0-alpha02
2024년 8월 7일
androidx.biometric:biometric:1.4.0-alpha02
및 androidx.biometric:biometric-ktx:1.4.0-alpha02
이 출시되었습니다. 버전 1.4.0-alpha02에는 이 커밋이 포함되어 있습니다.
새로운 기능
PromptContentView
를 사용하면 개발자가 맞춤 콘텐츠 뷰를 일반 설명 텍스트 뷰의 추가 옵션으로 표시할 수 있습니다.- 생체 인식 메시지에 앱 로고가 표시됨 - 애플리케이션 아이콘을 사용하여 자동으로 추가됨
API 변경사항
- 맞춤 콘텐츠 뷰를 지원하는 API 추가
BiometricPrompt.PromptInfo.Builder#setContentView
BiometricPrompt.PromptInfo#getContentView
PromptContentView
인터페이스PromptVerticalListContentView
클래스PromptContentViewWithMoreOptionsButton
클래스 (권한이 있는 앱만 해당)
- 로고를 지원하는 API 추가 (권한 있는 앱만 해당)
BiometricPrompt.PromptInfo.Builder#setLogoBitmap
BiometricPrompt.PromptInfo.Builder#setLogoRes
BiometricPrompt.PromptInfo.Builder#setLogoDescription
BiometricPrompt.PromptInfo#getLogoBitmap
BiometricPrompt.PromptInfo#getLogoRes
BiometricPrompt.PromptInfo#getLogoDescription
58c35c6
버그 수정
compileSdk
를 35 5dc41be로 업데이트
버전 1.4.0-alpha01
2024년 5월 29일
androidx.biometric:biometric:1.4.0-alpha01
및 androidx.biometric:biometric-ktx:1.4.0-alpha01
이 출시되었습니다. 이 버전은 내부 브랜치에서 개발되었으며 Android 15 베타 2를 타겟팅합니다.
버그 수정
- Android 15의 플랫폼 변경사항과 일치하도록 UI 업데이트
버전 1.2.0
버전 1.2.0-alpha05
2022년 9월 21일
androidx.biometric:biometric:1.2.0-alpha05
및 androidx.biometric:biometric-ktx:1.2.0-alpha05
가 출시되었습니다. 버전 1.2.0-alpha05에 포함된 커밋을 확인하세요.
API 변경사항
- Android 13의
android.security.identity.PresentationSession
에CryptoObject
지원을 추가했습니다. (C5f1ec, b/197965513)
버그 수정
- 라이브러리 크기를 줄이기 위해 불필요한 리소스 변형을 삭제했습니다. (I3601e, b/220178553)
- 비활동 컨텍스트에서 호스팅되는
BiometricPrompt
의 문제를 수정했습니다. (Ife255)
버전 1.2.0-alpha04
2021년 11월 17일
androidx.biometric:biometric:1.2.0-alpha04
및 androidx.biometric:biometric-ktx:1.2.0-alpha04
가 출시되었습니다. 버전 1.2.0-alpha04에 포함된 커밋을 확인하세요.
새로운 기능
- 비활동 컨텍스트에서 호스팅하는 프래그먼트의 BiometricPrompt 지원을 개선했습니다. (I9312b)
API 변경사항
- Android 12 BiometricManager.Strings API의 지원을 추가했습니다. (I12f2d)
- 대상 및 소스 호환성을 자바 7에서 자바 8로 변경했습니다. (I16129)
버그 수정
- 일부 기기(에뮬레이터 포함)에서 PIN/패턴/비밀번호로 대체할 때 취소 오류가 수신되는 API 29 문제를 해결했습니다. API 29를 사용하는 일부 기기에서는 생체 인식을 사용할 수 있고 등록한 경우에도 사용자에게 화면 잠금 요청 메시지가 표시될 수 있습니다. (b/142740104)
- 생체 인식 하드웨어가 없는 기기에서 PIN/패턴/비밀번호로 올바르게 대체되지 않는 API 29 문제를 해결했습니다. (b/170517889)
버전 1.2.0-alpha03
2021년 2월 24일
androidx.biometric:biometric:1.2.0-alpha03
및 androidx.biometric:biometric-ktx:1.2.0-alpha03
이 출시되었습니다. 버전 1.2.0-alpha03에 포함된 커밋을 확인하세요.
API 변경사항
- CredentialAuthPrompt에 정지 코루틴 확장 프로그램이 추가되었습니다. 이 확장 프로그램은 다른 AuthPrompt 유형을 위한 확장 프로그램과 유사합니다. (I9ac70)
버전 1.2.0-alpha02
2021년 1월 27일
androidx.biometric:biometric:1.2.0-alpha02
및 androidx.biometric:biometric-ktx:1.2.0-alpha02
가 출시되었습니다. 버전 1.2.0-alpha02에 포함된 커밋을 확인하세요.
API 변경사항
- 이전에 빌더를 통해 설정된 일부
AuthPrompt
필드를startAuthentication(...)
메서드 인수로 리팩터링했습니다. (I18896, b/174098373) - 이전 Android 버전에서는 지원이 제한되거나 지원되지 않는
AuthPrompt
유형의 최소 API 수준 요구사항을 추가했습니다. (I18896) - 빌더를 통해 설정된 모든
AuthPrompt
필드의 getter 메서드를 추가했습니다. (I18896) AuthPrompt
API를 통한 생체 인식 인증을 위해 정지 코루틴 Kotlin 확장 프로그램을 추가했습니다. 이러한 함수는 성공 시AuthenticationResult
를 직접 반환하거나 오류 또는 실패 시(사용자 인증 정보 거부) 예외를 발생시킵니다. (Iffc9e)
버그 수정
BiometricManager.canAuthenticate(int)
가 Android 10(API 수준 29)에서 지문 센서가 있는 기기의 잘못된 상태 코드를 반환하는 문제를 수정했습니다. (I72420, b/176921662)- Android 10(API 수준 29) 및 이전 SDK 버전에서
BiometricManager.canAuthenticate(int)
가 생체 인식 하드웨어와 등록된 PIN, 패턴 또는 비밀번호가 없는 기기의 잘못된 상태 코드를 반환하는 문제를 수정했습니다. (I79b7d, b/174505824) BiometricPrompt
가 연결된 활동보다 수명 주기가 짧은 프래그먼트에서 호스팅될 때 발생하는 메모리 누수 문제를 수정했습니다. (I70864, b/167014923)
버전 1.2.0-alpha01
2020년 12월 2일
androidx.biometric:biometric:1.2.0-alpha01
및 androidx.biometric:biometric-ktx:1.2.0-alpha01
이 출시되었습니다. 버전 1.2.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
androidx.biometric:biometric
위에 Kotlin 전용 API 및 프로그램을 추가하는androidx.biometric:biometric-ktx
모듈을 도입했습니다.
API 변경사항
BiometricPrompt
를 구성하고 인증을 실행하기 위한 새로운AuthPrompt
API를 추가했습니다. 이러한 API는onCreate
와 같은 초기 수명 주기 콜백에서BiometricPrompt
를 구성할 필요가 없습니다. (I19022)- 새로운
AuthPrompt
API를 위해Fragment
및FragmentActivity
에 Kotlin 확장 프로그램을 추가했습니다. (Iaf98c)
버전 1.1.0
버전 1.1.0
2021년 1월 27일
androidx.biometric:biometric:1.1.0
이 출시되었습니다. 버전 1.1.0에 포함된 커밋을 확인하세요.
1.0.0 이후 주요 변경사항
- Android 11에서 도입된 새로운 생체 인식 인증 기능 및 API 업데이트를 위한 이전 버전과의 호환성 지원을 추가했습니다.
- 라이브러리의 앱 크기 공간을 크게 줄였습니다(경우에 따라 100KB 초과).
- 이전에 라이브러리로 인해 발생한 메모리 누수의 다양한 소스를 삭제했습니다.
- 이전 Android 버전의 성능에 영향을 미칠 수 있는 클래스 확인 실패 문제를 수정했습니다.
- 라이브러리의 안정성 및 동작 개선사항을 다양하게 추가했습니다.
버전 1.1.0-rc01
2020년 11월 11일
androidx.biometric:biometric:1.1.0-rc01
이 출시되었습니다. 버전 1.1.0-rc01에 포함된 커밋을 확인하세요.
버그 수정
- 일부 기기에서 실행한 특정 작업(인증, 취소 등)에서 때때로
NullPointerException
이 발생하는 문제를 해결했습니다. (b/151316421) - Android 10에서
BiometricManager#canAuthenticate(int)
를 사용해 Class 3 생체 인식을 확인할 때 일부 Pixel 기기에서 잘못된 상태가 보고되는 문제를 해결했습니다. (b/170406186)
버전 1.1.0-beta01
2020년 10월 1일
androidx.biometric:biometric:1.1.0-beta01
이 출시되었습니다. 버전 1.1.0-beta01에 포함된 커밋을 확인하세요.
새로운 기능
- Android 8.1 이하에서 대화상자 애니메이션을 정적 애셋으로 대체하여 라이브러리의 APK 크기 공간을 크게 줄였습니다(경우에 따라 100KB 이상 압축). (I4844e)
- 이제 생체 인식 인증이 잠겨 있으면
BiometricPrompt
가 지원되는 모든 Android 버전에서 자동으로 기기 사용자 인증 정보(허용되는 경우)로 대체됩니다. (b/149579143)
버그 수정
BiometricPrompt
가 지문 센서가 없는 일부 Android 9 기기에서 비정상 종료를 일으키던 문제를 수정했습니다. (b/151443237)FingerprintDialogFragment
의 잠재적인NullPointerException
을 수정했습니다. (b/167951429)BiometricManager
에서 반영 메서드 호출에 잘못된CryptoObject
유형을 사용하던 문제를 수정했습니다. (b/165824669)- 닫은 직후
BiometricPrompt
가 다시 표시되면 일부 Android 10 기기에서 새 메시지가 자동으로 닫히는 문제를 수정했습니다. (b/157783075) FingerprintManagerCompat
사용과 관련된 메모리 누수 문제를 수정했습니다. (b/165840273)- 일부 Android 9 기기에서 지문 대화상자 UI가 숨겨지거나 잘못 표시되는 문제를 수정했습니다. (b/154868505, b/148350291)
버전 1.1.0-alpha02
2020년 8월 19일
androidx.biometric:biometric:1.1.0-alpha02
가 출시되었습니다. 버전 1.1.0-alpha02에 포함된 커밋을 확인하세요.
새로운 기능
- 이제
BiometricManager#canAuthenticate()
는BIOMETRIC_STATUS_UNKNOWN
을 반환하여 사용자가 여전히 인증할 수 있음을 나타내거나BIOMETRIC_ERROR_UNSUPPORTED
를 반환하여 지정된 인증자 조합이 기기에서 지원되지 않음을 나타낼 수 있습니다. - 이제
BiometricPrompt#authenticate()
는 오직 Android 11(API 수준 30) 이상에서만 연결된CryptoObject
와 함께 기기 사용자 인증 정보 인증에 사용할 수 있습니다.
API 변경사항
BiometricPrompt
의 인스턴스를 구성할 때 명시적Executor
제공이 선택사항이 되었습니다. (I6bb8a)- Android 11에서
BiometricManager#canAuthenticate(int)
메서드를 추가했습니다. (Ia3f1c) BiometricPrompt
를 업데이트하여 Android 11에서BiometricManager.Authenticators
상수에 관한 지원을 추가했습니다. (I39bd8)- Android 11에서
BiometricPrompt.AuthenticationResult#getAuthenticationType()
메서드를 추가했습니다. (Icfad5) - Android 11에서
BiometricPrompt.ERROR_SECURITY_UPDATE_REQUIRED
오류 코드를 추가했습니다. (I6610b) - 오직 Android 11(API 수준 30) 이상에서만
IdentityCredential
을 지원하도록BiometricPrompt.CryptoObject
를 업데이트했습니다. (I1d9f6)
버그 수정
BiometricFragment
및BiometricViewModel
의 LeakCanary에서 보고된 메모리 누수가 수정되었습니다. (b/144919472)BiometricViewModel
이 백그라운드 스레드에서MutableLiveData#setValue()
를 더 이상 호출하지 않도록 했습니다. (b/159983244)BiometricPrompt
가 일부 API 수준에서 임시 잠금을 올바르게 처리하지 않는 문제가 수정되었습니다. (9acfce9)BiometricPrompt
가 일부 API 수준에서 화면 잠금 사용자 인증 정보로 보호되지 않는 기기의 잘못된 오류 코드를 반환하는 문제가 수정되었습니다. (b/148626482)BiometricManager
및BiometricPrompt
가 일부 API 수준에서 키가드 구현이 없는 기기의 잘못된 오류 코드를 반환하는 문제가 수정되었습니다. (891c6e0)
버전 1.1.0-alpha01
2020년 6월 24일
androidx.biometric:biometric:1.1.0-alpha01
이 출시되었습니다. 버전 1.1.0-alpha01에 포함된 커밋을 확인하세요.
새로운 기능
- 메모리 누수 및 기타 의도하지 않은 동작의 잠재적인 원인을 해결하기 위해 내부 라이브러리 구현이 리팩터링되었습니다.
- 이제 내부 프래그먼트가 클라이언트 애플리케이션의 활동 수명 주기에 연결된
ViewModel
을 사용하여 데이터를 공유하고 유지합니다. - Android 10(API 수준 29) 이전의 기기 사용자 인증 정보가 더 이상 클라이언트 애플리케이션 내에서 투명한 활동을 시작하지 않습니다.
- 이제 내부 프래그먼트가 클라이언트 애플리케이션의 활동 수명 주기에 연결된
버그 수정
FingerprintManagerCompat
사용과 관련된 지원 중단 경고가 해결되었습니다. (b/142967618)- 이전 Android 버전에서 클래스 확인 문제를 방지하기 위해 SDK로 관리되는 플랫폼 메서드의 호출 방식이 변경되었습니다. (94beb4b)
- 공개 API의 일부가 아닌 Gradle 종속 항목을 더 이상 라이브러리에서 내보내지 않습니다. (f289d9e)
버전 1.0.1
버전 1.0.1
2019년 12월 18일
androidx.biometric:biometric:1.0.1
이 출시되었습니다. 버전 1.0.1에 포함된 커밋을 확인하세요.
버그 수정
- 영향받는 알려진 공급업체의 암호화 기반 인증에 관한 기존 지문 대체 해결 방법을 확장하면서 API 28로 제한했습니다. (b/143361271 참조)
- 특정 기기에서 시스템 오버레이에 생체 인식 대화상자가 표시되는 문제를 해결했습니다. (b/143230260 참조)
setDeviceCredentialAllowed(true)
의 몇 가지 문제가 해결되었습니다. (b/143091227, b/143097321, b/143653944 참조)- 특정 Android 버전에서 사용자가 기기 사용자 인증 정보를 확인한 후
onAuthenticationSuccess
가 때때로 호출되지 않던 문제를 해결했습니다. (b/145232806 참조) - 특정 Android 버전에서 회전 시 메시지가 닫힐 때
onAuthenticationError
가 때때로 호출되지 않던 문제를 해결했습니다. (b/145230042 참조) - 특정 Android 버전에서 특정 오류 코드를 수신할 때 메시지가 닫히지 않던 문제를 해결했습니다. (b/143683687 참조)
BiometricFragment
의 잠재적인NullPointerException
을 해결했습니다. (b/142599311 참조)
버전 1.0.0
버전 1.0.0
2019년 11월 7일
androidx.biometric:biometric:1.0.0
이 1.0.0-rc02
이후 변경사항 없이 출시되었습니다. 버전 1.0.0에 포함된 커밋을 확인하세요.
1.0.0의 주요 기능
- Android 10에서 구현된
BiometricPrompt
및BiometricManager
API의 호환성 버전, Android 6.0(API 23)까지 전체 기능 지원 Fragment
또는FragmentActivity
내에BiometricPrompt
용으로 내장된 수명 주기 관리- 암호화 기반 인증 중에 약한 생체 인식을 잘못 표시하는 것으로 알려진 기기에 관한 특별한 처리
버전 1.0.0-rc02
2019년 10월 23일
androidx.biometric:biometric:1.0.0-rc02
가 출시되었습니다. 버전 1.0.0-rc02에 포함된 커밋을 확인하세요.
버그 수정
- API 버전 28 및 29에서 암호화 기반 인증을 호출할 때 약한 생체 인식을 잘못 제공하는 것으로 알려진 기기를 위한 해결 방법을 추가했습니다. (b/142150327 참조)
버전 1.0.0-rc01
2019년 10월 9일
androidx.biometric:biometric:1.0.0-rc01
이 출시되었습니다. 버전 1.0.0-rc01에 포함된 커밋을 확인하세요.
버그 수정
- 화면이 회전하는 동안 닫을 때
FingerprintDialogFragment
에서 잠재적인 비정상 종료가 발생하는 문제를 해결했습니다. (b/141356362 참조) - 프레임워크 API에서 null
AuthenticationResult
가 수신될 때 비정상 종료가 발생할 수 있는 문제를 해결했습니다. (b/138862251 참조) onSaveInstanceState()
이후에 닫히는 중에BiometricPrompt
에서 발생하는 비정상 종료 문제를 해결했습니다. (b/138825362, b/140447194 참조)
버전 1.0.0-beta02
2019년 9월 18일
androidx.biometric:biometric:1.0.0-beta02
가 출시되었습니다. 버전 1.0.0-beta02에 포함된 커밋을 확인하세요.
버그 수정
1.0.0-beta01
버전의 기기 사용자 인증 정보 지원 관련 문제를 해결했습니다.- 자바 8 의존성을 삭제하고 자바 7에 의존하도록 전환했습니다. (b/140508526 참조)
- 지문 하드웨어가 감지되지 않을 때 이제
FingerprintHelperFragment
에서 올바르게ERROR_HW_NOT_PRESENT
가 발생합니다. (b/140427586 참조)
버전 1.0.0-beta01
2019년 8월 29일
androidx.biometric:biometric:1.0.0-beta01
이 출시되었습니다. 버전 1.0.0-beta01에 포함된 커밋을 확인하세요.
새로운 기능
BiometricPrompt가 Fragment에서 호스팅될 수 있도록 하는 두 번째 생성자를 도입했습니다(기존 생성자는 FragmentActivity가 필요함).
또한 다음과 같은 Android 10 기능을 AndroidX Biometric 라이브러리에 도입했습니다.
BiometricManager#canAuthenticate
BiometricPrompt.PromptInfo#setConfirmationRequired
BiometricPrompt.PromptInfo#setDeviceCredentialAllowed
Android 10에서 라이브러리는 플랫폼 API에서 상응하는 메서드를 호출합니다. 이전 API 레벨에서 라이브러리는 동작을 에뮬레이션합니다.
API 변경사항
- 생체 인식 프롬프트를 위한 프래그먼트별 생성자를 추가했습니다. (b/131980596 참조)
- 위의 '새로운 기능' 섹션을 참조하세요.
버그 수정
- L+용 BiometricPrompt 기기 사용자 인증 정보 지원을 추가합니다.
- 공개 오류 상수를 사용하도록 BiometricPrompt를 수정했습니다. (b/137788194 참조)
BiometricPrompt.onAttach()
의NullPointerException
을 수정합니다. (b/136103103 참조)- BiometricPrompt가 프롬프트 외부의 터치 이벤트에 의해 취소되지 않도록 동작을 변경했습니다. (b/135684487 참조)
- Kotlin에서 null 오류 값이 반환되는 경우 onAuthenticationError 비정상 종료 문제를 해결했습니다. (b/128350861 참조)
- 이제 FingerprintDialogFragment에 스타일을 지정할 수 있습니다. (b/127878106 참조)
- 이제 FingerprintDialog를 스크롤할 수 있습니다. (b/126367887 참조)
- 생체 인식 대화상자를 회전하면
IllegalStateException
이 발생하는 버그를 수정했습니다. (b/124153656 및 b/123811924 참조) - API 수준 23에서 27 사이의 일관되지 않은 동작을 수정했습니다. (b/124066957 참조)
- 지문 로그인 대화상자에서 TalkBack을 사용해 텍스트를 잘못 읽는 문제를 해결했습니다. (b/123572331 참조)
버전 1.0.0-alpha04
2019년 4월 3일
androidx.biometric:biometric:1.0.0-alpha04
가 출시되었습니다. 이 버전에 포함된 커밋은 여기에서 확인할 수 있습니다.
버그 수정
- Biometric 프래그먼트가 모든 사례에서 정리되지 않는 문제를 해결했습니다(b/121117380).
BiometricPrompt
에BiometricPrompt.AuthenticationCallback
인스턴스 1개만 허용되는 문제를 해결했습니다. (b/123857949 참조)- 시스템 버전과 compat 버전 사이에서 일관되지 않는
BiometricPrompt
오류 동작을 수정했습니다. (b/123572326 참조) - 런타임에
@NotNull errString
에서NullPointerException
이 발생하는 콜백onAuthenticationError()
를 수정했습니다. (b/123167217 참조) androidx.BiometricPrompt
취소 버튼 비정상 종료 문제를 해결했습니다. (b/122054485 참조)- Android P에서
androidx.biometric.PromptInfo
제목/설명이 변경되지 않는 문제를 해결했습니다. (b/122856773 참조)
버전 1.0.0-alpha03
2018년 12월 17일
버그 수정
- fragment 관련 문제를 해결했습니다.
- O 이전의 기기에서는 잠금 오류가 즉시 반환되어 P 이상과 일관되도록 합니다.