未分類iOS端末が何の生体認証に対応しているかは常に取得でき「る」アプリ部の中澤です。11.2現在のAppleの公式ドキュメントに一部誤りがある事を知ったので、その詳細を共有します。あるiOS端末が何の生体認証に対応しているかを知る為には、LAContextクラスのbiometryTypeというプロパティを見ます。faceIDのいずれかが入ります。11.2現在の公式ドキュメントによると、このbiometryTypeは以下のように説明されています。policyつまり、生体認証が使える場合に限り正しい値がセットされるということです。なると、以下の場合も取得出来ず、困ってしまいます。IDでの認証がロックされています。」などというメッセージをユーザーに出したい場合があるとします。ID」と表示すべきなのか分からないという状況が起こります。この挙動についてAppleに問い合わせたところ、前述のドキュメントの記述は実は間違っているという回答をもらいました。ロックされていようが指紋が未登録であろうが関係なく、canEvaluatePolicy(_:error:)を実行すれば常にbiometryTypeがセットされるのが仕様上正しいという事です。11端末でそのような挙動となることを確認できました。11.3時点で訂正される予定とのことです。11.0.xが載った一部端末では、そうなってくれないバグがあります。Plusでそのバグを確認できました。他にもあるかもしれません。11.1時点で既に修正済みとのことです。11.0でbiometryTypeを呼び出すとクラッシュする場合があるとのことです。ここまでの詳しい経緯は以下に載せてあります。Targetにするのが理想的です。事情あってそれが出来ない場合もあると思います。Xかどうかを材料に、正しいbiometryTypeの値を導出するという手があるかと思います。今回それを以下としてライブラリ化してみました。参考になれば幸いです。https://github.com/mshibanami/BiometryTypeBugWorkaroundフェンリルの開発者アカウントでは、フェンリルプロダクトの最新開発情報などをつぶやいています。