-
Notifications
You must be signed in to change notification settings - Fork 15
Full app localization: English + Korean, behind a feature flag #308
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
base: main
Are you sure you want to change the base?
Changes from 1 commit
File filter
Filter by extension
Conversations
Jump to
Diff view
Diff view
There are no files selected for viewing
| Original file line number | Diff line number | Diff line change |
|---|---|---|
|
|
@@ -23,6 +23,11 @@ | |
| <true/> | ||
| <key>CFBundleDevelopmentRegion</key> | ||
| <string>$(DEVELOPMENT_LANGUAGE)</string> | ||
| <key>CFBundleLocalizations</key> | ||
| <array> | ||
| <string>en</string> | ||
| <string>ko</string> | ||
| </array> | ||
|
Comment on lines
+25
to
+29
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more.
When a build is launched with Useful? React with 👍 / 👎.
Author
There was a problem hiding this comment. Choose a reason for hiding this commentThe reason will be displayed to describe this comment to others. Learn more. Intended scope: the kill switch is a compile-time Dart define and governs the Flutter layer (app strings, Language UI, locale resolution) — it exists to roll back app-string regressions. The InfoPlist strings are static bundle resources rendered by the OS in the device language, which is standard iOS/macOS behavior for any app that ships localizations; they can't observe a dart-define without custom build-phase scripting, which seems disproportionate for two static permission sentences with no regression surface. Documented this scope in the PR description. If the team prefers, a follow-up could gate the lproj resources per build flavor, but I'd argue an OS prompt in the device language alongside an English-pinned app is the platform-correct state, not a regression. |
||
| <key>CFBundleDisplayName</key> | ||
| <string>Vizor</string> | ||
| <key>CFBundleExecutable</key> | ||
|
|
||
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,2 @@ | ||
| "NSCameraUsageDescription" = "Vizor uses the camera to scan Keystone QR codes."; | ||
| "NSFaceIDUsageDescription" = "Vizor uses Face ID to unlock your wallet and confirm sensitive actions."; |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,2 @@ | ||
| "NSCameraUsageDescription" = "Vizor는 Keystone QR 코드를 스캔하기 위해 카메라를 사용합니다."; | ||
| "NSFaceIDUsageDescription" = "Vizor는 지갑 잠금 해제와 민감한 작업 확인을 위해 Face ID를 사용합니다."; |
| Original file line number | Diff line number | Diff line change |
|---|---|---|
| @@ -0,0 +1,4 @@ | ||
| arb-dir: lib/l10n | ||
| template-arb-file: app_en.arb | ||
| output-localization-file: app_localizations.dart | ||
| nullable-getter: false |
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Adding
kohere advertises a Korean native localization, but the camera and Face ID permission prompts still come from the EnglishNSCameraUsageDescription/NSFaceIDUsageDescriptionvalues because there is noko.lproj/InfoPlist.stringsunderios/Runner(and the same search shows onlyBase.lprojunder macOS). In the QR-scan or biometric flows, Korean users will see English OS dialogs while the Flutter UI is Korean; add localized InfoPlist strings before declaring Korean support.Useful? React with 👍 / 👎.
There was a problem hiding this comment.
Choose a reason for hiding this comment
The reason will be displayed to describe this comment to others. Learn more.
Addressed —
ios/Runner/en.lproj/InfoPlist.strings,ios/Runner/ko.lproj/InfoPlist.strings, and the macOS equivalents are in this branch (wired into both Runner.xcodeproj variant groups,koadded to knownRegions). Verified the built app bundles containko.lproj/InfoPlist.stringson both platforms.