אימות זיהוי פנים באנדרואיד: יישום ביומטרי

לקוחות מבקשים התחברות בפנים כמו באייפון, אבל אנדרואיד מפוצלת: ממכשירי דגל עם חיישני IR ועד דגמים זולים עם מצלמות רגילות. אנחנו מפתחים אימות ביומטרי בפנים, תוך התחשבות במחלקות ביומטריות ובמאפייני המכשיר. הצוות שלנו מספק פתרון מקצה לקצה—מבדיקת היתכנות ועד פריסה ותמיכה שוטפת—כדי להבטיח פתרון אמין שגדל עם העסק שלך.

פיתוח ותמיכה בכל סוגי היישומים הניידים:

יישומים ניידים למידע ובידור
אפליקציות חדשות, משחקים, מדריכים, קטלוגים מקוונים, אפליקציות מזג אוויר, אפליקציות כושר ובריאות, אפליקציות נסיעות, אפליקציות חינוכיות, רשתות חברתיות ומסנג'רים, חידונים, בלוגים ופודקאסטים, פורומים, אגרגטורים
יישומים ניידים למסחר אלקטרוני
חנויות מקוונות, אפליקציות B2B, מרקטפלייסים, בורסות מקוונות, שירותי קאשבק, בורסות, פלטפורמות דרופשיפינג, תוכניות נאמנות, משלוחי מזון ומוצרים, מערכות תשלום.
יישומים ניידים לניהול תהליכים עסקיים
מערכות CRM, מערכות ERP, ניהול פרויקטים, כלים לצוותי מכירות, ניהול פיננסי, ניהול ייצור, ניהול לוגיסטיקה ומשלוחים, ניהול משאבי אנוש, מערכות ניטור נתונים
יישומים ניידים לשירותים אלקטרוניים
פלטפורמות מודעות מסווגות, בתי ספר מקוונים, בתי קולנוע מקוונים, פלטפורמות שירות אלקטרוניות, פלטפורמות קאשבק, אירוח וידאו, פורטלים נושאיים, פלטפורמות הזמנות ותזמון מקוונות, פלטפורמות מסחר מקוונות

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

השירותים שאנו מציעים
מציג 1 מתוך 1כל 1734 השירותים
אימות זיהוי פנים באנדרואיד: יישום ביומטרי
בינוני
~1 יום

הכישורים שלנו:

שאלות נפוצות

העבודות האחרונות

  • פיתוח אפליקציית מובייל עבור FEEDME
    פיתוח אפליקציית מובייל עבור FEEDME
    971
  • פיתוח אפליקציית מובייל עבור XOOMER
    פיתוח אפליקציית מובייל עבור XOOMER
    869
  • פיתוח אפליקציית מובייל עבור RHL
    פיתוח אפליקציית מובייל עבור RHL
    1289
  • פיתוח אפליקציית מובייל עבור ZIPPY
    פיתוח אפליקציית מובייל עבור ZIPPY
    1143
  • פיתוח אפליקציית מובייל עבור Affhome
    פיתוח אפליקציית מובייל עבור Affhome
    1076
  • פיתוח אפליקציית מובייל עבור חברת FLAVORS
    פיתוח אפליקציית מובייל עבור חברת FLAVORS
    677

אימות זיהוי פנים באנדרואיד: הטמעת התחברות ביומטרית

"אני רוצה התחברות עם פנים כמו באייפון, אבל באנדרואיד." נשמע מוכר? האתגר הוא שמערכת האקוסיסטם של אנדרואיד מפוצלת: ממכשירי דגל עם חיישני אינפרא-אדום ועד מכשירי תקציב עם מצלמה קדמית רגילה, שבה זיהוי פנים הוא רק תחליף נוח למחוות החלקה. במקום תקן אחד, יש גן חיות של הטמעות: BiometricPrompt, ביומטריה ייעודית של Huawei (HMS), ולפעמים אין תמיכת חומרה כלל.

הניסיון שלנו: במשך למעלה מ-7 שנים הטמענו אימות ביומטרי עם זיהוי פנים ביותר מ-20 פרויקטים, כולל אפליקציות בנקאות ושירותי פינטק. לפי BiometricPrompt API, מומלץ להשתמש ב-Class 3 לעסקאות פיננסיות. הטמעת אימות ביומטרי באנדרואיד עם זיהוי פנים דורשת התחשבות בפיצול.

הביומטריה של אנדרואיד מחולקת לשלוש רמות אבטחה. לפעולות פיננסיות, רק Class 3 מתאים — ערובה חומרתית עם אימות ב-TEE. שימוש ב-Class 1 או 2 הופך התקפות זיוף עם תמונה לבלתי נמנעות.

אילו רמות ביומטריות קיימות ולמה זה חשוב?

אנדרואיד מחלקת ביומטריה לשלוש רמות. הנה השוואה:

רמה סוג חיישן רמת אבטחה תרחישים מותרים
Class 1 (נוחות) מצלמה קדמית ללא IR נמוכה — אפשרות לזיוף עם תמונה פתיחת מסך בלבד
Class 2 (חלש) מצלמה עם אלגוריתם משופר בינונית — הגנה חלקית אימות באפליקציות שאינן פיננסיות
Class 3 (חזק) חיישן IR + TEE גבוהה — ערובה חומרתית תשלומים, בנקאות, נתונים רגישים

BiometricPrompt, בשימוש נכון, מאובטח פי 3 יותר מפתרונות מותאמים אישית מכיוון שהוא מסתמך על TEE. קריאה ל-BiometricManager.canAuthenticate(BIOMETRIC_STRONG) מחזירה את הרמה הנכונה רק אם קיים חיישן חומרתי. לאפליקציות פיננסיות, אנו מקבלים רק Class 3.

איך להטמיע BiometricPrompt לזיהוי פנים?

הקוד זהה לאימות טביעת אצבע — אותו BiometricPrompt, אותו CryptoObject. ההבדל הוא שהמערכת בוחרת את ההנחיה בהתאם לביומטריה הזמינה. עם זאת, בחלק מהקושחות (Honor, MIUI), ההנחיה עשויה להציג גם פנים וגם טביעת אצבע בו-זמנית — זו התנהגות תקינה.

val biometricManager = BiometricManager.from(context)
val canAuthenticate = biometricManager.canAuthenticate(
    BiometricManager.Authenticators.BIOMETRIC_STRONG
)
when (canAuthenticate) {
    BiometricManager.BIOMETRIC_SUCCESS -> launchBiometricPrompt()
    BiometricManager.BIOMETRIC_ERROR_NO_HARDWARE -> showFallback()
    BiometricManager.BIOMETRIC_ERROR_HW_UNAVAILABLE -> showTemporaryError()
    BiometricManager.BIOMETRIC_ERROR_NONE_ENROLLED -> promptEnrollment()
}

val biometricManager = BiometricManager.from(context) val canAuthenticate = biometricManager.canAuthenticate( BiometricManager.Authenticators.BIOMETRIC_STRONG ) when (canAuthenticate) { BiometricManager.BIOMETRIC_SUCCESS -> launchBiometricPrompt() BiometricManager.BIOMETRIC_ERROR_NO_HARDWARE -> showFallback() BiometricManager.BIOMETRIC_ERROR_HW_UNAVAILABLE -> showTemporaryError() BiometricManager.BIOMETRIC_ERROR_NONE_ENROLLED -> promptEnrollment() } פותח את הגדרות המערכת דרך promptEnrollment() עם פרמטרים נוספים. חשוב: כשהמסך מסתובב או שה-Activity נוצר מחדש, הנחיה פתוחה נעלמת ללא קריאה חוזרת. פתרון — עקוב אחר דגל Intent(Settings.ACTION_BIOMETRIC_ENROLL) ב-ViewModel והפעל מחדש את ההנחיה ב-isAuthenticating. לחלופין, השתמש ב-onResume ב-Jetpack Compose.

למה BiometricPrompt לא עובד על Huawei ללא GMS?

Huawei עם HMS היא כאב ראש נפרד. rememberLauncherForActivityResult הסטנדרטי אינו קיים. הפתרון: הוסף BiometricPrompt והשתמש ב-com.huawei.hms:base באמצעות reflection או קומפילציה מותנית תחת ה-flavor של HMS. זה מוסיף 2–3 ימים לזמן הפיתוח.

מידע נוסף על Huawei HMS במכשירי Huawei ללא GMS, חבר את `com.huawei.hms:base` והשתמש ב-`HuaweiBiometricManager` באמצעות reflection או קומפילציה מותנית. זה מוסיף 2–3 ימים ללוח הזמנים.

פיצול מכשירים: מה אנחנו בודקים ידנית

יצרן מאפיין מיוחד
Samsung (One UI 5+) Face ID Strong במכשירי דגל, Weak במכשירי תקציב
Xiaomi / MIUI 14 HuaweiBiometricManager עשוי להחזיר רמה שגויה — נדרשת בדיקה נוספת
Pixel 6+ Strong מלא דרך חיישן מתחת למסך או IR קדמי
Huawei (HMS) canAuthenticate API ייעודי כאשר GMS אינו קיים

אבטחה: איך להגן מפני זיוף?

זיהוי מבוסס תמונה דו-ממדית (2D) פגיע להתקפות זיוף עם תמונה. אנחנו אף פעם לא משתמשים ב-Class 1 לפעולות הקשורות לכסף. אם הלקוח מתעקש על תמיכה במכשירי תקציב ישנים — אנו מציעים תוכנית דו-שלבית: פנים (Class 1) + PIN. זה עונה פורמלית על דרישות 2FA מבלי לפגוע באבטחה.

מה כלול בעבודה

  • ביקורת על צי המכשירים היעד וקביעת הרמה הביומטרית המינימלית
  • הטמעת זרימת KeyStore + CryptoObject עם אחסון מפתחות ב-TEE
  • טיפול בתרחיש Huawei HMS (במידת הצורך)
  • בדיקות על מכשירים פיזיים — לא פחות מ-10 דגמים מיצרנים שונים
  • תיעוד המפרט את המגבלות לפי יצרן
  • תמיכה לאחר השחרור למשך 14 יום

תהליך ולוחות זמנים

  1. אנליטיקה — הגדרת מכשירי יעד ורמה ביומטרית (1–2 ימים)
  2. עיצוב — תוכנית אימות עם שיטות גיבוי (יום אחד)
  3. הטמעה — שילוב BiometricPrompt, טיפול בשגיאות, ניהול מפתחות (3–5 ימים)
  4. בדיקות — על מכשירים אמיתיים מיצרנים שונים (2–3 ימים) — חוסך עד 30% באמצעות אוטומציה
  5. תיעוד — מגבלות דגמים והמלצות (יום אחד)

לוחות זמנים: בין 5 ל-10 ימי עבודה, תלוי בצורך בתמיכת HMS ובכמות הבדיקות. התקציב מחושב באופן אישי.

הזמינו פיתוח מפתח לתפנית: אנו מבטיחים פעולה תקינה על 95% מהמכשירים הפופולריים ועמידה מלאה בהמלצות האבטחה של BiometricPrompt API. קבלו ייעוץ לפרויקט שלכם — צרו קשר.