問題タブ [android-fingerprint-api]
For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.
android - 別のアプリで取得すると Android 指紋センサー キャンセル エラーが発生する
アプリで FingerprintManager を使用していますが、通常はすべて正常に動作します。私が抱えている主な問題は、顧客が指紋操作が時々キャンセルされると不平を言うことがあることです。これはログにエラー 5 (指紋操作がキャンセルされました) として表示されます。さて、うまく開発されていない他のアプリは、inPauseなどでセンサーを解放しないとセンサーを保持できるため、ロック画面でもセンサーを使用できないことがわかっています。この問題を回避し、センサーがアプリで再び動作するようにする方法はありますか?
ありがとう
android - Android: デバイスが指紋でロック解除できるかどうかを検出する
指紋認証を使用するアプリがあります。追加のセキュリティ対策として、指紋がデバイスのロック解除に使用されているかどうかを検出したいと思います。次の方法でロックモードを取得しようとしました。
ただし、この投稿によると、ロックが有効になっているかどうかを確認すると、結果が異なる場合があります。
デバイスのロック解除に指紋が使用されていることを確認する方法はありますか?
android - 認証に 1 つの指紋を使用するように Android を制限する
FingerprintManagerCompat を利用して、既存の Android アプリケーションに指紋認証を実装しています。ここにあるチュートリアルをガイダンスとして使用しました。
(android.support.v4.content.ContextCompat)
FingerprintManagerCompat はモバイル デバイスに保存された指紋を使用するため、デバイス上の任意の指紋を使用してアプリケーションにログインできます。
デバイスのどの指紋がロック解除に使用されたかを確認することはできますか? もしそうなら、デバイスで利用可能なすべての保存された指紋を取得する方法はありますか?
これが可能かどうかについての情報を探しましたが、何も見つからないようです。Samsung Pass SDK にはどの指紋が使用されているかを確認する機能があることがわかりましたが、製品所有者は、侵入テスト チームがあまり安全ではないことを発見したため、Samsung の Pass SDK を使用することを望んでいません。
xamarin - Xamarin.Forms Plugin.Fingerprint
https://github.com/smstuebe/xamarin-fingerprintから指紋プラグインを実装しようとしています
アイデアは、ユーザーが行った作業に署名するときに、コードを入力する代わりに指紋を使用できるようにすることです。
iOS デバイスでは機能していますが、Android デバイスで試してみると、「CrossFingerprint.Current.IsAvailable」は常に false を返します。何が間違っている可能性があるか知っている人はいますか?
コードの一部を次に示します。
また、DependencyService を実装して Android プロジェクトのメソッドを処理しようとしましたが、同じ結果が返されます。
誰が何が間違っているのか手がかりを持っていますか? DependencyService などのない iOS デバイスで動作しているため、Android と関係があるとしか思えません。
android - SecuGen 指紋スキャナーを USB 経由で Android アプリケーションに統合する方法
指紋スキャンを使用する必要がある Android アプリケーションを構築したいと考えています。これには、外部 SecuGen 指紋スキャナー (SecuGen Hamster Pro 20) を使用しています。これを Android アプリに統合する方法。SecuGen 指紋スキャン用の SDK が利用可能です。これから始める方法は?
android - カスタムパスワードで保護されたAndroid KeyStoreでKeyPairを生成する方法
指紋と 4 桁の PIN (アプリケーション設定でユーザーが設定できます。これはシステム PIN/パターン/パスワードではありません) 認証を使用するアプリがあります。
指紋ですべて問題ありませんが、ピンに問題があります。
私がやろうとしていることは次のとおりです。
- ユーザーがアプリケーション設定からピンを設定できるようにする
- 入力されたピンで保護されたエイリアスのキーストアでキーペアを生成します(このピンなしでは秘密鍵にアクセスできないようにするため)
- 将来の署名検証のために公開鍵をサーバーに送信する
- サーバーからユーザー トークンを取得し、ローカル ストレージに保存します
次に、承認中に:
- ユーザーに PIN の入力を要求する
- 入力した PIN で秘密鍵を取得する
- ローカル ストレージからトークンを取得する
- ステップ 6 の秘密鍵でトークンに署名する
- 署名付きデータでサーバーに送信する
- サーバーで署名を確認し、有効な場合はユーザーのセッションを開きます。
私の質問は:ユーザーが入力したピンで保護された KeyPair を生成するにはどうすればよいですか?
PS指紋の場合、このロジックは次のように処理されます。
android - cordova-plugin-android-fingerprint-auth を使用すると MobileFirst 7.1 ベースのアプリがクラッシュする
アプリケーションでcordova 指紋認証プラグインを使用していますが、アプリケーションがクラッシュし、logcat に以下のエラーが表示されます。
11-14 11:12:47.671: W/PluginManager(30565): スレッド警告: FingerprintAuth.authenticate への exec() 呼び出しにより、メイン スレッドが 33 ミリ秒ブロックされました。プラグインは CordovaInterface.getThreadPool() を使用する必要があります。
11-14 11:12:47.712: D/FingerprintAuthDialog(30565): disableBackup: false 11-14 11:12:47.713: W/ResourceType(30565): リソース番号 0x00000000 の値を取得するときにパッケージ識別子がありません 11-14 11: 12:47.713: D/AndroidRuntime(30565): VM 11-14 をシャットダウンしています 11:12:47.716: E/AndroidRuntime(30565): 致命的な例外: メイン 11-14 11:12:47.716: E/AndroidRuntime(30565):プロセス: com.fingerPrint、PID: 30565 11-14 11:12:47.716: E/AndroidRuntime(30565): android.content.res.Resources$NotFoundException: リソース ID #0x0 11-14 11:12:47.716: E/ AndroidRuntime(30565): android.content.res.Resources.getValue(Resources.java:1351) 11-14 11:12:47.716: E/AndroidRuntime(30565): android.content.res.Resources.loadXmlResourceParser(Resources) .java:2777) 11-14 11:12:47.716: E/AndroidRuntime(30565): android.content.res.Resources で。getLayout(Resources.java:1165) 11-14 11:12:47.716: E/AndroidRuntime(30565): android.view.LayoutInflater.inflate(LayoutInflater.java:421) 11-14 11:12:47.716: E/ AndroidRuntime(30565): com.fingerPrint.FingerprintAuthenticationDialogFragment.onCreateView(FingerprintAuthenticationDialogFragment.java:87) 11-14 11:12:47.716: E/AndroidRuntime(30565): android.app.Fragment.performCreateView(Fragment.java:2220) ) 11-14 11:12:47.716: E/AndroidRuntime(30565): android.app.FragmentManagerImpl.moveToState(FragmentManager.java:973) で 11-14 11:12:47.716: E/AndroidRuntime(30565): Android で.app.FragmentManagerImpl.moveToState(FragmentManager.java:1148) 11-14 11:12:47.716: E/AndroidRuntime(30565): android.app.BackStackRecord.run(BackStackRecord.java:793) 11-14 11:12 :47.716: E/AndroidRuntime(30565): android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1537) 11-14 11:12:47.716: E/AndroidRuntime(30565): android.app.FragmentManagerImpl$1.run(FragmentManager.java:482) 11-14 11:12:47.716 : E/AndroidRuntime(30565): android.os.Handler.handleCallback(Handler.java:746) 11-14 11:12:47.716: E/AndroidRuntime(30565): android.os.Handler.dispatchMessage(Handler. java:95) 11-14 11:12:47.716: E/AndroidRuntime(30565): android.os.Looper.loop(Looper.java:148) 11-14 11:12:47.716: E/AndroidRuntime(30565) : android.app.ActivityThread.main(ActivityThread.java:5443) 11-14 11:12:47.716: E/AndroidRuntime(30565): java.lang.reflect.Method.invoke(ネイティブ メソッド) 11-14 11 :12:47.716: E/AndroidRuntime(30565): com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java:728) 11-14 11:12:47.716:E/AndroidRuntime(30565): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): Logger.java:471 の Logger$UncaughtExceptionHandler.uncaughtException :: キャッチされない例外 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): android.content.res.Resources$NotFoundException: リソースID #0x0 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): android.content.res.Resources.getValue(Resources.java:1351) で 11-14 11:12 :47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): android.content.res.Resources.loadXmlResourceParser(Resources.java:2777) 11-14 11:12:47.718: E/com.worklight. common.Logger$UncaughtExceptionHandler(30565): Android で。content.res.Resources.getLayout(Resources.java:1165) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): android.view.LayoutInflater.inflate(LayoutInflater.java で:421) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): com.fingerPrint.FingerprintAuthenticationDialogFragment.onCreateView(FingerprintAuthenticationDialogFragment.java:87) で 11-14 11:12:47.718 : E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): android.app.Fragment.performCreateView(Fragment.java:2220) 11-14 11:12:47.718: E/com.worklight.common.Logger$ UncaughtExceptionHandler(30565): android.app.FragmentManagerImpl.moveToState(FragmentManager.java:973) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): android.app.FragmentManagerImpl.moveToState(FragmentManager.java:1148) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): android.app.BackStackRecord.run(BackStackRecord.java:793) で 11 -14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): android.app.FragmentManagerImpl.execPendingActions(FragmentManager.java:1537) 11-14 11:12:47.718: E/com .worklight.common.Logger$UncaughtExceptionHandler(30565): android.app.FragmentManagerImpl$1.run(FragmentManager.java:482) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565) ): android.os.Handler.handleCallback(Handler.java:746) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): android.os.Handler.dispatchMessage( Handler.java:95) 11-14 11:12:47.718:E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): android.os.Looper.loop(Looper.java:148) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler (30565): android.app.ActivityThread.main(ActivityThread.java:5443) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): java.lang.reflect で。 Method.invoke(ネイティブ メソッド) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): com.android.internal.os.ZygoteInit$MethodAndArgsCaller.run(ZygoteInit.java: 728) 11-14 11:12:47.718: E/com.worklight.common.Logger$UncaughtExceptionHandler(30565): com.android.internal.os.ZygoteInit.main(ZygoteInit.java:618) 11-14 11: 12:47.723: D/com.worklight.wlclient.api.WLLifecycleHelper(30565): WLLifecycleHelper.WLLifecycleHelper.java:109 の logAppSession :: 開始タイムスタンプなしでアプリのクラッシュを記録しようとしました
手順:
- プラグインFingerprintAuth.java、FingerprintAuthenticationDialogFragment .java、FingerprintUiHelper.javaファイルをandroid/src/com/フォルダーに追加しました
config.xmlに追加
/li>common/jsフォルダーにFingerprintAuth.jsを追加
毎回、デバイスにデプロイする前にcordova_plugins.jsに以下を追加します
/li>
5.main.jsファイルのコードの下に追加された指紋認証を確認するには