2016-08-09 17 views
0

指紋を使用してユーザーを認証するアプリケーションがあるとします。 Android 5では、Samsung SpassライブラリはSamsungデバイス専用です。 Android Mのリリースでは、多くのデバイスにサポートが追加されています。まず、私はAndroidのMだ場合、私は、ハードウェアを持っている場合、私は指紋を登録した場合、私は、マネージャーのインスタンスを持っているかどうかを確認、すべての:私はここで失敗した場合Androidの指紋API - Samsung Spassからの移行

if(Build.VERSION.SDK_INT >= Build.VERSION_CODES.M) { 
     FingerprintManager manager = (FingerprintManager) context.getSystemService(Context.FINGERPRINT_SERVICE); 
     if (manager != null) { 
      logger.info("Android native fingerprint manager exists"); 
      if (manager.isHardwareDetected()) { 
       logger.info("Android native fingerprint manager detected hardware"); 
       if (manager.hasEnrolledFingerprints()) { 
        logger.info("Android native fingerprint manager has enrolled fingerprints"); 
       } 
      } 
      return new AndroidFingerprintHelper(context); 
     } 
    } 

私はAndroidがあるかどうかを確認するためにフォールバックサムスンとSpassライブラリがインストールされています。今問題は、ユーザーがSpassでSamsungにLollipopを持っていて、指紋を登録している場合です。その後、新しい指紋を登録しないでAndroid にアップグレードしましたmanager.hasEnrolledFingerprints()は本当でしょうか?言い換えれば、Samsung SpassライブラリはAndroid OSとデータを共有していますか?ありがとう。研究とテストの多くがあることを発見しましたIまあ後

答えて

1

:アンドロイドMとサムスンで 指紋がmanager.isHardwareDetected()を呼び出そうとし、SPASS図書館(サムスンネイティブSDK)を使用して登録された場合FingerPrintManagerは決してnullしますが、ネイティブAndroid FingerPrint Managerの場合はfalseを返します。

関連する問題