2

アプリに機密データが含まれており、アクセスする前にパスコードを使用してユーザーがローカルで認証されるようにしたいとします。このXamarin のタッチ ID の紹介記事 に見られるように、iOS 8 で Xamarin TouchID 認証を使用しています。iOS 7 を実行していた古いデバイスでこれをテストしましたが、明らかに機能しませんでした。私の質問は、iOS 7 デバイスでパスコード認証を行うにはどうすればよいですか? これは iOS 8 でのみ利用できますか?


iOS アプリ Mint がカスタム パスコードを使用していることに気付きました。TouchID ポップアップの [パスコードを入力] ボタンに接続するカスタム パスコードをどのように実装しますか? その方法を知っていれば、iOS 7 で動作するように独自のカスタム パスコードを実装できます...

ここに画像の説明を入力 ここに画像の説明を入力

4

1 に答える 1

2

iOS 7 では Touch ID を使用できません。

カスタム パスコードを使用するには、evaluatePolicy で LAErrorUserFallback エラーをキャッチするだけです。

LAContext *context = [[LAContext alloc] init];
[context evaluatePolicy:LAPolicyDeviceOwnerAuthenticationWithBiometrics
                 localizedReason:@"Your Text" reply:^(BOOL success, NSError *error) {
                     if(success) {
                     // handle success
                     } else {
                         NSString *failureReason;
                         switch (error.code) {
                             case LAErrorUserFallback:
                                // show your custom passcode screen
                                 break;
                         } 
                     }
                 }];

コードは明らかに完成させる必要があり、他のすべてのエラー ケースも処理する必要があります。

于 2015-04-08T12:15:25.833 に答える