iOS: `NSFaceIDUsageDescription` missing for the biometric app lock
Maintainers usually reply within 1 day
Nobody has claimed this yet.
Assessment
- Difficulty
- 1/5
- Estimated time
- Under an hour
- Newbie friendliness
- 85/100
Research direction
The change belongs in ios/Runner/Info.plist, which currently lacks the NSFaceIDUsageDescription key. The biometric call path starts at LocalAuth.goWithResult() in lib/core/utils/app_auth.dart, which is useful for context but needs no edits. Done means the plist has the key with a user-facing reason string; a Face ID device check is ideal but not required to submit.
Written by the indexing model from the issue text.
Description
Hi! Thanks for ServerBox.
While testing a config checker on popular Flutter apps, I noticed ios/Runner/Info.plist has
no NSFaceIDUsageDescription (and it isn't set via INFOPLIST_KEY_* in the Xcode project
either).
ServerBox offers a biometric app lock (useBioAuth → LocalAuth.goWithResult() in
lib/core/utils/app_auth.dart, which calls LocalAuthentication.authenticate in fl_lib).
local_auth's iOS README says: "To support Face ID on iOS devices, you must add an
NSFaceIDUsageDescription entry to your Info.plist file":
https://pub.dev/packages/local_auth_darwin#setup
Suggested fix (wording is up to you):
<key>NSFaceIDUsageDescription</key>
<string>ServerBox uses Face ID to unlock the app.</string>
I haven't tested on a Face ID device, so I can't say exactly how it fails without the key.
Happy to open a PR if that's easier.
- Dominant language
- Dart
- Stars
- 8.9k
- Forks
- 573
- Avg merge
- 6h 53m
- Merged PRs (30d)
- 133
Getting set up
- No Dockerfile or Docker Compose file
- Has a pull request template
- Read the contributing guide
First steps
- Read the whole issue, then the project's contributing guide.
- Comment on the issue to say you are picking it up — it saves two people doing the same work.
- Fork the repository and make your change on a branch.
- Open a pull request that references the issue number.
More from lollipopkit/flutter_server_box
-
enhancement
Difficulty 5/5 Over a week Newbie friendliness 8/100
lollipopkit/flutter_server_box#1844 · 1 comment · 1 reaction ·
Maintainers usually reply within 1 day
-
F-Droid build failedOpenbug
Difficulty 3/5 Half a day Newbie friendliness 22/100
lollipopkit/flutter_server_box#1841 · 2 comments · 2 reactions ·
Maintainers usually reply within 1 day
-
优化建议Openenhancement feature
Difficulty 4/5 3-5 days Newbie friendliness 30/100
lollipopkit/flutter_server_box#1829 · 2 comments · 1 reaction ·
Maintainers usually reply within 1 day
-
feature
Difficulty 4/5 3-5 days Newbie friendliness 45/100
lollipopkit/flutter_server_box#1827 · 1 comment · 1 reaction ·
Maintainers usually reply within 1 day
-
bug
Difficulty 3/5 1-2 days Newbie friendliness 58/100
lollipopkit/flutter_server_box#1808 · 4 comments · 1 reaction ·
Maintainers usually reply within 1 day
All issues in lollipopkit/flutter_server_box
Similar issues
-
[CarouselView] Crash (RangeError / ArgumentError) when children or itemCount is empty with infinite: true or CarouselController.animateToItemPossibly taken A pull request linked to this issue is open or already merged. Openp: material_ui package platform-android platform-ios platform-linux platform-macos platform-web team-design
Difficulty 2/5 1-3 hours Newbie friendliness 62/100
flutter/flutter#195878 · 1 comment ·
Maintainers usually reply within 1 day
-
agent-ready area:testing bug
Difficulty 2/5 1-3 hours Newbie friendliness 88/100
pauljohanneskraft/Acai#479 ·
Maintainers usually reply within 3 days
-
[genkit_google_genai] Gemini tool call with no arguments fails with "requires a non-null input"Possibly taken @kenzieschmoll claimed this today. Open
Difficulty 2/5 1-3 hours Newbie friendliness 80/100
genkit-ai/genkit-dart#692 ·
Maintainers usually reply within 11 days
-
Difficulty 1/5 Under an hour Newbie friendliness 82/100
-
Difficulty 1/5 Under an hour Newbie friendliness 88/100
Maintainers usually reply within 1 day