ביומטרית

אימות באמצעות מידע ביומטרי או פרטי כניסה של המכשיר, וביצוע פעולות קריפטוגרפיות.
העדכון האחרון גרסה יציבה מועמד לגרסה גרסת בטא גרסה אלפא
7 באוגוסט 2024 1.1.0 - - 1.4.0-alpha02

הצהרה על יחסי תלות

כדי להוסיף תלות ב-Biometric, צריך להוסיף את מאגר Google Maven לפרויקט. מידע נוסף זמין במאגר Maven של Google.

מוסיפים את יחסי התלות של הארטיפקטים הנדרשים בקובץ build.gradle של האפליקציה או המודול:

מגניב

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")
}

אפשר לקרוא מידע נוסף על יחסי תלות במאמר הוספת יחסי תלות של build.

משוב

המשוב שלכם עוזר לנו לשפר את Jetpack. אם נתקלתם בבעיות חדשות או שיש לכם רעיונות לשיפור הספרייה הזו, נשמח לשמוע מכם. לפני שיוצרים בעיה חדשה, כדאי לעיין בבעיות הקיימות בספרייה הזו. כדי להצביע לבעיה קיימת, לוחצים על לחצן הכוכב.

דיווח על בעיה חדשה

מידע נוסף זמין במסמכי התיעוד של Issue Tracker.

גרסה 1.4

גרסה 1.4.0-alpha02

7 באוגוסט 2024

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

29 במאי 2024

androidx.biometric:biometric:1.4.0-alpha01 ו-androidx.biometric:biometric-ktx:1.4.0-alpha01 משוחררים. הגרסה הזו מפותחת בהסתעפות פנימית ומיועדת ל-Android 15 Beta 2.

תיקוני באגים

  • עדכון ממשק המשתמש כך שיתאים לשינויים בפלטפורמה ב-Android 15

גרסה 1.2.0

גרסה 1.2.0-alpha05

21 בספטמבר 2022

androidx.biometric:biometric:1.2.0-alpha05 ו-androidx.biometric:biometric-ktx:1.2.0-alpha05 משוחררים. גרסה 1.2.0-alpha05 מכילה את ההוספות האלה.

שינויים ב-API

  • הוספנו תמיכה ב-CryptoObject ל-android.security.identity.PresentationSession ב-Android 13. (C5f1ec, ‏ b/197965513)

תיקוני באגים

  • הוסר וריאנט משאב לא הכרחי כדי לצמצם את גודל הספרייה. (I3601e, ‏ b/220178553)
  • תוקנה בעיה ב-BiometricPrompt שמתארח בהקשרים שאינם פעילות. (Ife255)

גרסה 1.2.0-alpha04

17 בנובמבר 2021

androidx.biometric:biometric:1.2.0-alpha04 ו-androidx.biometric:biometric-ktx:1.2.0-alpha04 משוחררים. גרסה 1.2.0-alpha04 מכילה את ההוספות האלה.

תכונות חדשות

  • תמיכה משופרת ב-BimetricPrompt במקטעים שמתארחים בהקשרים שאינם פעילות (I9312b)

שינויים ב-API

תיקוני באגים

  • תוקנה בעיה ב-API 29 שבה מכשירים מסוימים (כולל מכונות וירטואליות) קיבלו שגיאת ביטול כשחזרו לקוד אימות/לסימן/לסיסמה. חשוב לזכור שבמכשירים מסוימים עם API 29, הפעולה הזו עשויה לגרום להצגת בקשה למשתמש להזין את נעילת המסך שלו, גם אם יש לו שיטה ביומטרית זמינה ורשומה. (b/142740104)
  • תוקנה בעיה ב-API 29 שגרמה לכך שמכשירים ללא חומרה ביומטרית לא הוחזרו כראוי לקוד אימות/לקו ביטול נעילה/סיסמה (b/170517889)

גרסה 1.2.0-alpha03

24 בפברואר 2021

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

27 בינואר, 2021

androidx.biometric:biometric:1.2.0-alpha02 ו-androidx.biometric:biometric-ktx:1.2.0-alpha02 משוחררים. גרסה 1.2.0-alpha02 מכילה את התחייבויות אלה.

שינויים ב-API

  • ארגון מחדש של חלק מהשדות של AuthPrompt שהוגדרו בעבר דרך builder, לארגומנטים של השיטה startAuthentication(...). (I18896, ‏ b/174098373)
  • הוספנו דרישות מינימום לרמת ה-API עבור סוגי AuthPrompt עם תמיכה מוגבלת או ללא תמיכה בגרסאות Android ישנות יותר. (I18896)
  • נוספו שיטות getter לכל שדות AuthPrompt שמוגדרים באמצעות ה-builder. (I18896)
  • הוספנו תוספים של קורוטינים מושהים ב-Kotlin לאימות ביומטרי דרך ממשקי ה-API של AuthPrompt. הפונקציות האלה יחזירו את AuthenticationResult ישירות בהצלחה, או יקפיצו חריגה במקרה של שגיאה או כשל (דחיית פרטי כניסה). (Iffc9e)

תיקוני באגים

  • תוקנה בעיה שבה לפעמים BiometricManager.canAuthenticate(int) החזיר את קוד הסטטוס הלא נכון למכשיר עם חיישן טביעות אצבע ב-Android 10‏ (API ברמה 29). (I72420, ‏ b/176921662)
  • תוקנה בעיה שבה BiometricManager.canAuthenticate(int) החזיר את קוד הסטטוס הלא נכון למכשיר ללא חומרה ביומטרית וללא קוד אימות, דפוס או סיסמה רשומים ב-Android 10‏ (API ברמה 29) ובגרסאות קודמות של SDK. (I79b7d, ‏ b/174505824)
  • תוקנה דליפת זיכרון שהתרחשה כש-BiometricPrompt היה מתארח בחלקיק עם מחזור חיים קצר יותר מזה של הפעילות המשויכת אליו. (I70864, b/167014923)

גרסה 1.2.0-alpha01

2 בדצמבר 2020

androidx.biometric:biometric:1.2.0-alpha01 ו-androidx.biometric:biometric-ktx:1.2.0-alpha01 שוחררו. גרסה 1.2.0-alpha01 כוללת את ההוספות האלה.

תכונות חדשות

  • השקנו את המודול androidx.biometric:biometric-ktx, שמוסיף ממשקי API ותוספים ספציפיים ל-Kotlin בנוסף ל-androidx.biometric:biometric.

שינויים ב-API

  • נוספו ממשקי API חדשים של AuthPrompt ליצירה של BiometricPrompt ולביצוע אימות. ממשקי ה-API האלה לא מחייבים את הבנייה של BiometricPrompt בקריאה חוזרת (callback) של מחזור חיים מוקדם, כמו onCreate. (I19022)
  • הוספנו תוספים של Kotlin ל-Fragment ול-FragmentActivity לממשקי ה-API החדשים של AuthPrompt. (Iaf98c)

גרסה 1.1.0

גרסה 1.1.0

27 בינואר 2021

androidx.biometric:biometric:1.1.0 משוחרר. גרסה 1.1.0 כוללת את השמירות האלה.

שינויים משמעותיים מאז גרסה 1.0.0

  • נוספה תמיכה תואמת לאחור בתכונות ובעדכוני API חדשים של אימות ביומטרי שהושקו ב-Android 11.
  • צמצמנו משמעותית את גודל האפליקציה של הספרייה (במקרים מסוימים, ב-100KB ויותר).
  • הוסרו מקורות שונים של דליפות זיכרון שנגרמו בעבר על ידי הספרייה.
  • תוקנו כשלים באימות הכיתה שעשויים להשפיע על הביצועים בגרסאות Android ישנות יותר.
  • בוצעו שיפורים נוספים ביציבות ובהתנהגות של הספרייה.

גרסה 1.1.0-rc01

11 בנובמבר 2020

androidx.biometric:biometric:1.1.0-rc01 משוחרר. גרסה 1.1.0-rc01 כוללת את השמירות האלה.

תיקוני באגים

  • תוקנה בעיה במכשירים מסוימים שבה פעולות מסוימות (אימות, ביטול וכו') היו גורמות לפעמים להצגת השגיאה NullPointerException. (b/151316421)
  • תוקנה בעיה שבה מכשירי Pixel מסוימים דיווחו על סטטוס שגוי כשמשתמשים ב-BiometricManager#canAuthenticate(int) לבדיקת מידע ביומטרי של סיווג 3 ב-Android 10. (b/170406186)

גרסה 1.1.0-beta01

1 באוקטובר 2020

androidx.biometric:biometric:1.1.0-beta01 משוחרר. גרסה 1.1.0-beta01 כוללת את ההצהרות האלה.

תכונות חדשות

  • צמצמנו באופן משמעותי את גודל ה-APK של הספרייה (במקרים מסוימים, הצלחנו לצמצם את הגודל ב-100KB ויותר אחרי דחיסת הקובץ) על ידי החלפת אנימציות של תיבת דו-שיח בנכסים סטטיים ב-Android 8.1 ובגרסאות קודמות. (I4844e)
  • BiometricPrompt (b/149579143)

תיקוני באגים

  • תוקנה בעיה שבה BiometricPrompt גרמה לקריסה בחלק ממכשירי Android 9 ללא חיישן טביעות אצבע. (b/151443237)
  • תוקנה בעיה פוטנציאלית ב-NullPointerException ב-FingerprintDialogFragment. (b/167951429)
  • תוקנה בעיה שבה נעשה שימוש בסוג שגוי של CryptoObject להפעלה של שיטה רפלקטיבית ב-BiometricManager. (b/165824669)
  • תוקנה בעיה שבה הצגת BiometricPrompt שוב זמן קצר אחרי סגירה גרמה לסגירה האוטומטית של ההנחיה החדשה במכשירי Android 10 מסוימים. (b/157783075)
  • תוקנו דליפות זיכרון שקשורות לשימוש ב-FingerprintManagerCompat. (b/165840273)
  • תוקנו בעיות שקשורות לממשק המשתמש של תיבת הדו-שיח של טביעת האצבע, שהיה מוסתר או מוצג באופן שגוי במכשירי Android 9 מסוימים. (b/154868505, ‏ b/148350291)

גרסה 1.1.0-alpha02

19 באוגוסט 2020

androidx.biometric:biometric:1.1.0-alpha02 משוחרר. גרסה 1.1.0-alpha02 מכילה את ההוספות האלה.

תכונות חדשות

  • עכשיו יכול להיות שה-BiometricManager#canAuthenticate() יחזיר את הערך BIOMETRIC_STATUS_UNKNOWN כדי לציין שהמשתמש יכול עדיין לבצע אימות, או את הערך BIOMETRIC_ERROR_UNSUPPORTED כדי לציין שהמכשיר לא תומך בשילוב נתונים ספציפי של מאמת.
  • עכשיו אפשר להשתמש ב-BiometricPrompt#authenticate() לאימות פרטי הכניסה של המכשיר עם CryptoObject משויך ב-Android 11 (רמת API 30) ואילך בלבד.

שינויים ב-API

תיקוני באגים

  • תוקנו דליפות זיכרון שדווחו על ידי LeakCanary ב-BiometricFragment וב-BiometricViewModel. (b/144919472)
  • מוודאים ש-BiometricViewModel לא יתקשר יותר ל-MutableLiveData#setValue() משרשור ברקע. (b/159983244)
  • תוקנה בעיה שבה BiometricPrompt לא טיפל כראוי בנעילת חשבון זמנית ברמות מסוימות של ממשקי API. (9acfce9)
  • תוקנה בעיה שבה BiometricPrompt החזיר את קוד השגיאה הלא נכון למכשיר שלא מאובטח באמצעות פרטי כניסה לנעילת מסך ברמות מסוימות של ממשקי API. (b/148626482)
  • תוקנה בעיה שבה BiometricManager ו-BiometricPrompt החזירו קודי שגיאה שגויים למכשיר ללא הטמעה של מסך הנעילה ברמות מסוימות של ממשקי API. (891c6e0)

גרסה 1.1.0-alpha01

24 ביוני 2020

androidx.biometric:biometric:1.1.0-alpha01 משוחרר. גרסה 1.1.0-alpha01 כוללת את ההוספות האלה.

תכונות חדשות

  • שיפרנו את הטמעת הספרייה הפנימית כדי לטפל במקורות פוטנציאליים של דליפות זיכרון והתנהגות לא מכוונת אחרת:
    • עכשיו, קטעי קוד פנימיים משתפים נתונים ושומרים אותם באמצעות ViewModel שמקושר למחזור החיים של הפעילות של אפליקציית הלקוח.
    • אימות פרטי הכניסה של המכשיר בגרסאות Android שקדמו ל-Android 10 (רמת API 29) לא מתחיל יותר פעילות שקוופה באפליקציית הלקוח.

תיקוני באגים

  • נפתרו אזהרות על הוצאה משימוש הקשורות לשימוש ב-FingerprintManagerCompat. (b/142967618)
  • שינינו את אופן הקריאה של שיטות פלטפורמה מוגבלות ב-SDK כדי למנוע בעיות באימות הכיתה בגרסאות ישנות יותר של Android. (94beb4b)
  • הספרייה לא מייצאת יותר יחסי תלות ב-Gradle שלא נכללים ב-API הציבורי. (f289d9e)

גרסה 1.0.1

גרסה 1.0.1

18 בדצמבר 2019

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)
  • תוקן פוטנציאל NullPointerException ב-BiometricFragment (b/142599311)

גרסה 1.0.0

גרסה 1.0.0

7 בנובמבר 2019

androidx.biometric:biometric:1.0.0 פורסם ללא שינויים מאז 1.0.0-rc02. גרסה 1.0.0 מכילה את ההתחייבויות האלה.

תכונות עיקריות בגרסה 1.0.0

  • גרסה תואמת של ממשקי ה-API BiometricPrompt ו-BiometricManager, כפי שהוטמעו ב-Android 10, עם תמיכה מלאה בתכונות החל מ-Android 6.0 (API 23)
  • ניהול מחזור חיים מובנה של BiometricPrompt בתוך Fragment או FragmentActivity
  • טיפול מיוחד במכשירים שידועים כמציגים נתונים ביומטריים חלשים באופן שגוי במהלך אימות מבוסס-קריפטוגרפיה

גרסה 1.0.0-rc02

23 באוקטובר 2019

androidx.biometric:biometric:1.0.0-rc02 משוחרר. גרסה 1.0.0-rc02 כוללת את ההוספות האלה.

תיקוני באגים

  • הוספנו פתרון זמני למכשירים מסוימים שידועים ככאלה שמספקים באופן שגוי נתונים ביומטריים חלשים כשמתבצעת הפעלה של אימות מבוסס-קריפטוגרפיה בגרסאות API 28 ו-29 (b/142150327)

גרסה 1.0.0-rc01

9 באוקטובר 2019

androidx.biometric:biometric:1.0.0-rc01 משוחרר. גרסה 1.0.0-rc01 מכילה את ההתחייבויות האלה.

תיקוני באגים

  • תוקנה קריסה פוטנציאלית ב-FingerprintDialogFragment כשסוגרים אותה בזמן שהמסך מסתובב (b/141356362)
  • תוקנה בעיה שבה קבלת AuthenticationResult null מ-API של המסגרת עלולה לגרום לקריסה (b/138862251)
  • תוקנו קריסות שנגרמו בגלל סגירת BiometricPrompt אחרי onSaveInstanceState() (b/138825362, ‏ b/140447194)

גרסה 1.0.0-beta02

18 בספטמבר 2019

androidx.biometric:biometric:1.0.0-beta02 משוחרר. גרסה 1.0.0-beta02 כוללת את ההוספות האלה.

תיקוני באגים

  • תיקון בעיות בתמיכה בפרטי כניסה של המכשיר בגרסה 1.0.0-beta01
  • הסרתנו את יחסי התלות ב-Java 8 ועברנו לשימוש ב-Java 7 (b/140508526)
  • עכשיו, מכשיר FingerprintHelperFragment משדר ERROR_HW_NOT_PRESENT בצורה נכונה כשלא מזוהה חומרה של טביעת אצבע (b/140427586)

גרסה 1.0.0-beta01

29 באוגוסט 2019

androidx.biometric:biometric:1.0.0-beta01 משוחרר. גרסה 1.0.0-beta01 מכילה את ההצהרות האלה.

תכונות חדשות

הוספנו קונסטרוקטור שני ל-BiometricPrompt שמאפשר לארח אותו ב-Fragment (בניגוד לקונסטרוקטור הקיים, שדורש FragmentActivity).

אנחנו שמחים גם להוסיף לספרייה הביומטרית של AndroidX את הפונקציונליות הבאה מ-Android 10:

  1. BiometricManager#canAuthenticate
  2. BiometricPrompt.PromptInfo#setConfirmationRequired
  3. BiometricPrompt.PromptInfo#setDeviceCredentialAllowed

ב-Android 10, הספרייה תפעיל את השיטות התואמות מ-Platform API. ברמות API ישנות יותר, הספרייה תדמה את ההתנהגות.

שינויים ב-API

  • נוסף בנאי ספציפי למקטעים עבור הנחיה ביומטרית (b/131980596)
  • אפשר לעיין בקטע 'תכונות חדשות' שלמעלה.

תיקוני באגים

  • הוספת תמיכה בפרטי כניסה למכשיר באמצעות הנחיות ביומטריות ל-L+
  • תוקן BiometricPrompt כך שישתמש בערכי קבועים של שגיאות גלויים לכולם (b/137788194)
  • תיקון NullPointerException ב-BiometricPrompt.onAttach() (b/136103103)
  • ההתנהגות השתנתה כך שלא תאפשר ביטול של BimetricPrompt על ידי אירוע מגע מחוץ להנחיה (b/135684487)
  • תוקנה קריסה של onAuthenticationError כשמוחזר ערך שגיאה null ב-Kotlin (b/128350861)
  • עכשיו אפשר לשנות את הסגנון של FingerprintDialogFragment (b/127878106)
  • עכשיו אפשר לגלול ב-FingerprintDialog (b/126367887)
  • תוקן באג שגרם לכך שסיבוב תיבת הדו-שיח הביומטרית הוביל להצגת IllegalStateException (b/124153656), (b/123811924)
  • תוקנה התנהגות לא עקבית ברמות 23 עד 27 של API. (b/124066957)
  • תוקנה בעיה שבה הטקסט הלא נכון הוקרא באמצעות TalkBack בתיבת הדו-שיח של התחברות באמצעות טביעת אצבע. (b/123572331)

גרסה 1.0.0-alpha04

3 באפריל 2019

androidx.biometric:biometric:1.0.0-alpha04 משוחרר. כאן אפשר למצוא את ההתחייבויות (commits) שכלולות בגרסה הזו.

תיקוני באגים

  • לא תמיד מתבצע ניקוי של קטעי מידע ביומטרי קבועים. (b/121117380)
  • BiometricPrompt קבוע מאפשר רק מופע אחד של BiometricPrompt.AuthenticationCallback (b/123857949)
  • תוקנה התנהגות השגיאה BiometricPrompt שלא הייתה עקבית בין גרסאות המערכת לגרסאות התאימות. (b/123572326)
  • תיקון קריאה חוזרת onAuthenticationError() עם @NotNull errString שגורמת ל-NullPointerException בזמן ריצה (b/123167217)
  • קריסות של לחצן ביטול androidx.BiometricPrompt תוקנו (b/122054485)
  • תוקנה בעיה שבה הכותרת או התיאור של androidx.biometric.PromptInfo לא השתנו ב-Android P (b/122856773)

גרסה 1.0.0-alpha03

17 בדצמבר 2018

תיקוני באגים

  • תוקנו בעיות שקשורות לקטעים
  • במכשירי Android מגרסה O ואילך, שגיאות של נעילת חשבון מוצגות באופן מיידי כדי לשמור על עקביות עם גרסאות P ואילך