expo: FaceID expo-local-authentication doesn't work

Minimal reproducible example

https://github.com/TomasSestak/face-id-issue

Summary

When trying to use FaceID - it always returns “FaceID is available but has not been configured. To enable FaceID, provide NSFaceIDUsageDescription.”

I tried both using "plugins": [ [ "expo-local-authentication", { "faceIDPermission": "Allow $(PRODUCT_NAME) to use Face ID." } ] ], and

ios.infoPlist.NSFaceIDUsageDescription but with the same result

Environment

expo-env-info 1.0.5 environment info: System: OS: macOS 13.2.1 Shell: 5.8.1 - /bin/zsh Binaries: Node: 16.13.0 - ~/.nvm/versions/node/v16.13.0/bin/node Yarn: 1.22.19 - ~/.yarn/bin/yarn npm: 9.1.2 - ~/.yarn/bin/npm Watchman: 2023.02.27.00 - /opt/homebrew/bin/watchman Managers: CocoaPods: 1.11.3 - /usr/local/bin/pod SDKs: iOS SDK: Platforms: DriverKit 22.2, iOS 16.2, macOS 13.1, tvOS 16.1, watchOS 9.1 IDEs: Android Studio: Electric Eel 2022.1.1 Patch 2 Electric Eel 2022.1.1 Patch 2 Xcode: 14.2/14C18 - /usr/bin/xcodebuild npmPackages: expo: ~48.0.6 => 48.0.6 react: 18.2.0 => 18.2.0 react-native: 0.71.3 => 0.71.3 npmGlobalPackages: expo-cli: 6.0.8 Expo Workflow: managed

About this issue

  • Original URL
  • State: closed
  • Created a year ago
  • Comments: 32 (2 by maintainers)

Most upvoted comments

Hi !

The problem has been fixed but has not been published yet from what I’ve seen. Here is the fix : https://github.com/expo/expo/commit/5a23fbd5c411cbc28adb8582617d1c41873a05e3

Any plan to publish it ?

@brentvatne its a blocker for all people use iOS FACE ID auth (with Expo 48), and the fix seems ready as @a-leblond mentioned, could you help publish it?

I have published the fix from https://github.com/expo/expo/commit/5a23fbd5c411cbc28adb8582617d1c41873a05e3 to the latest version used by sdk-48: expo-local-authentication@~13.3.0

apologies for the delay on this

Having the same issue on a bare RN project, reverting to 13.0.2 temporarily fixed the issue

Confirmed that the issue is resolved, thank you @brentvatne !

I am also waiting for updates, since my app is on hold because of the glitch

Any update on this problem > ?

Any ETA on the publish?

Are there plans to support FaceID on the expo go app? That seems silly to not since that’s usually how we can test locally before pushing to a dev or prod environment.

hi there! faceid is indeed is not supported in expo go. we’ll update the documentation accordingly. sorry for the confusion!

Is there a way to test this via expo go or is this planned? I see this is closed and I see mentioned that it is not supported, but that feels like a gap.

With debug build Face ID doesn’t work. You need to run prebuild and after android and iOS folders appeared you will be able to test it. Another suggestion it’s test local build with Touch ID, it works as expected. Good luck

updated with “5a23fbd to the latest version used by sdk-48: expo-local-authentication@~13.3.0.” and still I’m facing this issue. “ios”: { “supportsTablet”: true, “infoPlist”: { “NSFaceIDUsageDescription”: “Allow $(PRODUCT_NAME) to use Face ID.”, “NSCameraUsageDescription”: “This app uses the camera to scan barcodes on event tickets.” } },

solution please?

did you get a solution?

Thanks for your response. What I found out:

  • latest version works after running expo:build, which means it works only for production because it extracted native folders and create plist files.
  • if I run locally dev build it returns an error, which says sh like “missed NSFaceIDUsageDescription key”.
  • After extracting the native part locally (expo:prebuild) appeared iOS and Android folders and eventually I was able to run expo run:ios on a simulator with FaceID.

fix it, please 🥲

Having the same issue on a bare RN project, reverting to 13.0.2 temporarily fixed the issue

can confirm - and thank you