2016-06-29 43 views
0

我已經構建了一個Android應用程序,它在AndroidStudio中成功使用了指紋認證API。我需要構建相同的東西,但使用React Native for android。如何去做呢?是React支持的指紋認證API嗎?我可以重新使用我的Java代碼嗎?React Android中的本機指紋認證

回答

0

您可以使用React Native Touch Id插件來處理React native中的Touch事件。但不幸的是,Android的實施尚未完成。

所以,你必須寫橋。 Android代碼可以在React Native中使用。如果您想了解更多關於如何橋接Javascript代碼與原生JAVA,請檢查https://facebook.github.io/react-native/docs/native-modules-android.html

+0

你能解釋更多嗎?這主要覆蓋了易於使用的部分,這很好,但對於指紋認證,我必須使用指紋權限,創建密碼對象,生成安全密鑰以及用於認證的處理程序類,所有這些都可以在JavaScript中完成? – NathanK

+0

你可以在JAVA中完成所有任務。處理完所有內容後,您可以將回調發送到React Native Layer。爲了將回調發送到Javascript層,React Native提供'DeviceEventEmitter'和'LifecycleEventListener'。 – Sriraman

0

指紋認證API在ReactNative中受支持。您可以使用現有的本地模塊或創建您自己的模塊

爲了開始,您可以分叉我的項目並開始在其之上構建。

https://github.com/hiteshsahu/FingerPrint-Authentication-With-React-Native-Android

我創造了這個本機模塊保持數據的安全性爲第一要務,這是向後兼容舊版本的Android(API < 23)

enter image description here

特點

  • 用途FingerprintManagerCompat到支持Android的舊版本(API < 23) 機模塊使用指紋傳感器

  • 錯誤無效的指紋,指紋未註冊的情況下處理,鎖定未啓用,不支持硬件。

  • 超過最大指紋嘗試次數後,該插件禁用生物特徵驗證功能。
  • 禁止生物認證可以從主屏幕登錄成功
  • 用戶證書進行加密,AES算法,並存儲在文件系統中,而密鑰存儲在Android的密鑰庫
  • 檢查植根設備並刷新存儲的憑據
  • 後啓用