المقاييس الحيوية

قم بالمصادقة باستخدام المقاييس الحيوية أو بيانات اعتماد الجهاز، وإجراء عمليات التشفير.
التعديل الأخير الإصدار المستقر إصدار مرشح الإصدار التجريبي إصدار ألفا
29 أيار (مايو) 2024 1.1.0 - - 1.4.0-alpha01

إعلان التبعيات

لإضافة تبعية إلى المقاييس الحيوية، يجب إضافة مستودع Maven من Google إلى مشروعك. لمزيد من المعلومات، يمكنك الاطّلاع على مستودع Maven من Google.

أضف التبعيات للعناصر التي تحتاجها في ملف build.gradle لتطبيقك أو الوحدة الخاصة بك:

رائع

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

لمزيد من المعلومات حول التبعيات، يُرجى الاطّلاع على مقالة إضافة تبعيات الإصدار.

ملاحظات

تساعدنا ملاحظاتك في تحسين Jetpack. يُرجى إخبارنا إذا اكتشفت مشاكل جديدة أو كانت لديك أفكار لتحسين هذه المكتبة. يُرجى الاطّلاع على المشاكل الحالية في هذه المكتبة قبل إنشاء مشكلة جديدة. يمكنك إضافة تصويتك إلى مشكلة حالية من خلال النقر على زر النجمة.

إنشاء عدد جديد

راجِع مستندات أداة تتبُّع المشاكل للحصول على مزيد من المعلومات.

الإصدار 1.4

الإصدار 1.4.0-alpha01

29 أيار (مايو) 2024

تم طرح androidx.biometric:biometric:1.4.0-alpha01 وandroidx.biometric:biometric-ktx:1.4.0-alpha01. تم تطوير هذا الإصدار في فرع داخلي ويستهدف الإصدار 15 من نظام التشغيل Android التجريبي.

إصلاح الأخطاء

  • تحديث واجهة المستخدم لتتوافق مع تغييرات النظام الأساسي في 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 على هذه الالتزامات.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة دعم 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 على هذه الالتزامات.

الميزات الجديدة

  • تحسين توافق ميزة BiometricPrompt للأجزاء التي تتم استضافتها من خلال سياقات عدم النشاط (I9312b)

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة دعم لواجهة برمجة التطبيقات BiometricManager.Strings لنظام التشغيل Android 12 (I12f2d).
  • تم تغيير توافق المصدر والهدف من Java 7 إلى Java 8 (I16129).

إصلاح الأخطاء

  • تم إصلاح مشكلة واجهة برمجة التطبيقات 29 حيث تتلقى بعض الأجهزة (بما في ذلك المحاكيات) خطأ الإلغاء عند الرجوع إلى رقم التعريف الشخصي/النمط/كلمة المرور. يُرجى العلم أنّه في بعض الأجهزة التي تستخدم الإصدار 29 من واجهة برمجة التطبيقات، قد يُطلب من المستخدم تفعيل قفل الشاشة حتى في حال توفُّر مقياس حيوي وتسجيله. (b/142740104)
  • تم إصلاح مشكلة واجهة برمجة التطبيقات 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 على هذه الالتزامات.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة تعليق إضافات الكوروتين لـ 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 على هذه الالتزامات.

تغييرات واجهة برمجة التطبيقات

  • تمت إعادة ضبط بعض حقول AuthPrompt التي تم ضبطها سابقًا باستخدام أداة إنشاء إلى وسيطات طريقة startAuthentication(...). (I18896، b/174098373)
  • تمت إضافة الحد الأدنى لمتطلبات مستوى واجهة برمجة التطبيقات لأنواع AuthPrompt مع دعم محدود أو عدم دعمه على إصدارات Android القديمة. (I18896)
  • تمت إضافة طرق الاستلام لجميع حقول AuthPrompt التي تم إعدادها من خلال أداة إنشاء. (I18896)
  • تم تعليق إضافات الكوروتين في Kotlin لعملية المصادقة بالمقاييس الحيوية من خلال واجهات برمجة تطبيقات AuthPrompt. ستعرض هذه الدوال AuthenticationResult مباشرةً عند نجاحها أو تعرض استثناءً عند خطأ أو تعذُّر (رفض بيانات الاعتماد). (Iffc9e)

إصلاح الأخطاء

  • تم إصلاح المشكلة المتمثلة في عرض BiometricManager.canAuthenticate(int) في بعض الأحيان لرمز حالة غير صحيح لجهاز يحتوي على أداة استشعار لبصمة الإصبع في Android 10 (المستوى 29 من واجهة برمجة التطبيقات). (I72420، b/176921662)
  • تم إصلاح المشكلة التي كانت تتسبب في عرض BiometricManager.canAuthenticate(int) لرمز حالة غير صحيح لجهاز لا يتضمّن أجهزة مقاييس حيوية ولم يتم تسجيل رقم تعريف شخصي أو نقش أو كلمة مرور مسجَّلة على نظام التشغيل Android 10 (المستوى 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 التي تضيف واجهات برمجة تطبيقات وإضافات خاصة بلغة Kotlin على androidx.biometric:biometric.

تغييرات واجهة برمجة التطبيقات

  • تمت إضافة واجهات برمجة تطبيقات AuthPrompt جديدة لإنشاء BiometricPrompt وإجراء المصادقة. لا تتطلّب واجهات برمجة التطبيقات هذه إنشاء BiometricPrompt في مرحلة معاودة الاتصال المبكرة، مثل onCreate. (I19022)
  • تم إدراج إضافات Kotlin في Fragment وFragmentActivity لواجهات برمجة تطبيقات AuthPrompt الجديدة. (Iaf98c)

الإصدار 1.1.0

الإصدار 1.1.0

27 كانون الثاني (يناير) 2021

تم طرح "androidx.biometric:biometric:1.1.0". يتضمّن الإصدار 1.1.0 هذه الالتزامات.

التغييرات الرئيسية منذ الإصدار 1.0.0

  • تمت إضافة التوافق مع الأنظمة القديمة لميزات المصادقة بالمقاييس الحيوية وتحديثات واجهة برمجة التطبيقات الجديدة التي تم إطلاقها في Android 11.
  • خفض حجم تطبيق المكتبة بشكل كبير (بأكبر من 100 كيلوبايت، في بعض الحالات)
  • تمت إزالة المصادر المختلفة لتسرّب الذاكرة التي كانت تحدث بسبب المكتبة في السابق.
  • تم إصلاح الأخطاء التي قد تؤثر في أداء ميزة "إثبات ملكية الصف الدراسي" على إصدارات 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 في المكتبة بشكل كبير (بضغط أكثر من 100 كيلوبايت في بعض الحالات)، وذلك من خلال استبدال الصور المتحركة لمربّعات الحوار بمواد عرض ثابتة على الإصدار Android 8.1 والإصدارات الأقدم. (I4844e)
  • الآن، يعود تطبيق BiometricPrompt تلقائيًا إلى مصادقة بيانات اعتماد الجهاز (في حال السماح بذلك) على جميع إصدارات Android المتوافقة عند قفل المصادقة بالمقاييس الحيوية. (b/149579143)

إصلاح الأخطاء

  • تم إصلاح المشكلة المتمثلة في تسبب BiometricPrompt في حدوث عطل على بعض الأجهزة التي تعمل بنظام التشغيل Android 9 بدون أداة استشعار بصمة الإصبع. (b/151443237)
  • تم إصلاح NullPointerException محتمل في FingerprintDialogFragment. (b/167951429)
  • تم إصلاح المشكلة المتمثلة في استخدام نوع CryptoObject غير صحيح لاستدعاء طريقة انعكاسية في BiometricManager. (b/165824669)
  • تم إصلاح المشكلة التي كانت تؤدي إلى إغلاق الطلب الجديد تلقائيًا على بعض الأجهزة التي تعمل بنظام التشغيل Android 10 والتي أدّت إلى عرض BiometricPrompt مرة أخرى بعد الإغلاق بفترة قصيرة. (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 (المستوى 30 لواجهة برمجة التطبيقات) والإصدارات الأحدث فقط.

تغييرات واجهة برمجة التطبيقات

إصلاح الأخطاء

  • تم إصلاح تسرُّب الذاكرة الذي أبلغ عنه LeakCanary في BiometricFragment وBiometricViewModel. (b/144919472)
  • تم التأكد من أنّ BiometricViewModel لن يستدعي MutableLiveData#setValue() من سلسلة محادثات في الخلفية بعد ذلك. (b/159983244)
  • تم إصلاح المشكلة المتمثلة في عدم معالجة BiometricPrompt للحظر المؤقت بشكل صحيح على بعض مستويات واجهة برمجة التطبيقات. (9acfce9)
  • تم إصلاح المشكلة المتمثلة في عرض BiometricPrompt لرمز خطأ غير صحيح لجهاز غير مؤمّن باستخدام بيانات اعتماد قفل الشاشة على بعض مستويات واجهة برمجة التطبيقات. (b/148626482)
  • تم إصلاح المشكلة المتمثلة في عرض BiometricManager وBiometricPrompt لرموز الخطأ الخاطئة لجهاز لم يتم تطبيق قفل مفاتيح عليه على بعض مستويات واجهة برمجة التطبيقات. (891c6e0)

الإصدار 1.1.0-alpha01

24 حزيران (يونيو) 2020

تم طرح "androidx.biometric:biometric:1.1.0-alpha01". يحتوي الإصدار 1.1.0-alpha01 على هذه الالتزامات.

الميزات الجديدة

  • تمت إعادة تنظيم تنفيذ المكتبة الداخلية لمعالجة المصادر المحتملة لتسرّب الذاكرة وغيرها من السلوكيات غير المقصودة:
    • تشارك الأجزاء الداخلية الآن البيانات وتحتفظ بها باستخدام ViewModel المرتبط بدورة حياة نشاط تطبيق العميل.
    • لم تعُد مصادقة بيانات اعتماد الجهاز قبل الإصدار 10 من Android (المستوى 29 لواجهة برمجة التطبيقات) تبدأ نشاطًا شفافًا داخل تطبيق العميل.

إصلاح الأخطاء

  • تم التعامل بشكل نهائي مع تحذيرات الإيقاف النهائي المتعلّقة باستخدام FingerprintManagerCompat. (b/142967618)
  • تم تغيير طريقة استدعاء طُرق الأنظمة الأساسية المستندة إلى حِزم SDK لتجنّب مشاكل إثبات ملكية الفئة على إصدارات Android القديمة. (94beb4b)
  • ستتوقف المكتبة عن تصدير تبعيات Gradle التي ليست جزءًا من واجهة برمجة التطبيقات العامة. (f289d9e)

الإصدار 1.0.1

الإصدار 1.0.1

18 كانون الأول (ديسمبر) 2019

تم طرح "androidx.biometric:biometric:1.0.1". يتضمّن الإصدار 1.0.1 هذه الالتزامات.

إصلاح الأخطاء

  • تم توسيع الحل البديل الحالي لبصمة الإصبع للمصادقة المستندة إلى التشفير إلى البائعين المتأثرين المعروفين، مع قصره أيضًا على واجهة برمجة التطبيقات 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

  • إصدار متوافق مع واجهتَي برمجة التطبيقات BiometricPrompt وBiometricManager، على النحو المطبَّق في نظام التشغيل Android 10، مع إتاحة جميع الميزات على الإصدار Android 6.0 (واجهة برمجة التطبيقات 23)
  • إدارة مراحل نشاط "BiometricPrompt" المضمّنة في "Fragment" أو "FragmentActivity"
  • معالجة خاصة للأجهزة المعروفة بتقديم مقاييس حيوية ضعيفة بشكل غير صحيح أثناء المصادقة المستندة إلى التشفير

الإصدار 1.0.0-rc02

23 تشرين الأول (أكتوبر) 2019

تم طرح "androidx.biometric:biometric:1.0.0-rc02". يحتوي الإصدار 1.0.0-rc02 على هذه الالتزامات.

إصلاح الأخطاء

  • تمت إضافة حل بديل لبعض الأجهزة المعروف أنّها تقدِّم مقاييس حيوية ضعيفة بشكل غير صحيح عند استدعاء المصادقة المستندة إلى التشفير في الإصدارَين 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 فارغة من واجهة برمجة التطبيقات لإطار العمل قد يتسبّب في حدوث عطل (b/138862251).
  • تم إصلاح الأعطال الناتجة عن إغلاق BiometricPrompt بعد onSaveInstanceState() (b/138825362، b/140447194)

الإصدار 1.0.0-beta02

18 أيلول (سبتمبر) 2019

تم طرح "androidx.biometric:biometric:1.0.0-beta02". يحتوي الإصدار 1.0.0-الإصدار التجريبي 02 على هذه الالتزامات.

إصلاح الأخطاء

  • تم إصلاح المشاكل المتعلقة بدعم بيانات اعتماد الجهاز في الإصدار 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-الإصدار التجريبي 01 على هذه الالتزامات.

الميزات الجديدة

لقد قدمنا دالة إنشاء أخرى لـ BiometricPrompt التي تسمح باستضافتها في Fragment (على مقابل الدالة الإنشائية الحالية، التي تتطلب FragmentActivity).

يسعدنا أيضًا توفير الوظائف التالية من نظام التشغيل Android 10 في مكتبة المقاييس الحيوية على AndroidX:

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

على نظام التشغيل Android 10، ستستدعي المكتبة الطرق المقابلة من واجهة برمجة التطبيقات للنظام الأساسي. أمّا في مستويات واجهة برمجة التطبيقات القديمة، فستحاكي المكتبة السلوك.

التغييرات في واجهة برمجة التطبيقات

  • تمت إضافة دالة إنشاء خاصة بالأجزاء لطلب المقاييس الحيوية (b/131980596).
  • راجِع قسم "الميزات الجديدة" أعلاه.

إصلاح الأخطاء

  • إضافة دعم بيانات اعتماد الجهاز BiometricPrompt لـ L+
  • تم إصلاح سمة BiometricPrompt لاستخدام ثوابت الأخطاء العامة (b/137788194)
  • إصلاح NullPointerException في BiometricPrompt.onAttach() (b/136103103)
  • تم تغيير السلوك إلى عدم السماح بإلغاء ميزة BiometricPrompt باستخدام حدث لمس خارج الطلب (b/135684487).
  • تم إصلاح تعطُّل onAuthError عند عرض قيمة خطأ فارغة في Kotlin (b/128350861)
  • يمكن الآن تعديل النمط (b/127878106).
  • يمكن الآن الانتقال إلى بصمة الإصبع (b/126367887)
  • تم إصلاح خطأ يتسبّب في ظهور علامة IllegalStateException عن طريق تدوير مربّع حوار المقاييس الحيوية (b/124153656)، (b/123811924).
  • تم إصلاح السلوك غير المتسق على المستويات من 23 إلى 27 لواجهة برمجة التطبيقات. (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) في سلوك خطأ واحد (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

إصلاح الأخطاء

  • المشاكل المتعلقة بالأجزاء التي تم إصلاحها
  • على الأجهزة التي تعمل بالإصدار O والإصدارات الأقدم، يتم عرض أخطاء التأمين على الفور بما يتوافق مع P والإصدارات الأحدث