ביומטרי

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

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

כדי להוסיף תלות בנתונים ביומטריים, צריך להוסיף את מאגר 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. נשמח לשמוע אם גילית בעיות חדשות או אם יש לך רעיונות לשיפור הספרייה הזו. מומלץ לעיין בעיות קיימות בספרייה הזו לפני שיוצרים ספר חדש. אפשר להוסיף את ההצבעה שלך לבעיה קיימת על ידי לחיצה על לחצן הכוכב.

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

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

גרסה 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)
  • נוספו שיטות אחזור לכל השדות AuthPrompt שהוגדרו באמצעות builder. (I18896)
  • נוספה השעיה של תוספי Coroutine 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 החזירו קודי שגיאה שגויים עבור מכשיר ללא הטמעה של KeyGuard בחלק מרמות ה-API. (891c6e0)

גרסה 1.1.0-alpha01

24 ביוני 2020

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

תכונות חדשות

  • ארגון מחדש של הטמעת הספרייה הפנימית כדי לטפל במקורות פוטנציאליים של דליפות זיכרון והתנהגות לא מכוונת אחרת:
    • עכשיו מקטעים פנימיים משתפים ושומרים נתונים באמצעות ViewModel שמקושר למחזור החיים של אפליקציית הלקוח.
    • התכונה 'אימות פרטי כניסה למכשיר' לפני 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 מכילה את ההתחייבויות האלה.

תיקוני באגים

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

גרסה 1.0.0-rc01

9 באוקטובר 2019

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

תיקוני באגים

  • תוקנה קריסה פוטנציאלית של FingerprintDialogFragment כשסוגרים אותה בזמן שהמסך מסתובב (b/141356362)
  • תוקנה בעיה שבה קבלת ערך null AuthenticationResult מ-framework 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 מכילה את התחייבויות אלה.

תכונות חדשות

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

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

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

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

שינויים ב-API

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

תיקוני באגים

  • הוספת תמיכה בפרטי כניסה למכשיר באמצעות הנחיות ביומטריות ל-L+
  • תוקנו הביומטריים הנחיה לשימוש בקבועי שגיאה ציבוריים (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 משוחרר. אפשר למצוא כאן את ההתחייבות שכלולה בגרסה הזו.

תיקוני באגים

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

גרסה 1.0.0-alpha03

17 בדצמבר 2018

תיקוני באגים

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