Android app internationalization: users can now choose their application language
summary
Android 13 lets apps set per-app languages at runtime using AndroidX. Implement by declaring supported locales with a localeConfig XML in the manifest, call AppCompatDelegate.setApplicationLocales with a one-item LocaleList for runtime switching (handled as an activity restart), and let AndroidX persist choices with the autoStoreLocales manifest flag for pre-T compatibility. Settings app and in-app pickers sync when the runtime API is used, avoiding prior ad hoc storage and API-deprecation complexity.
AI-written summary · about
chapters (9)
- 0:00Introduction to feature
- 1:34Why per-app language matters
- 2:59Declaring supported languages
- 3:42In-app language picker demo
- 5:08Storing locale preferences
- 6:32Migrating existing pickers
- 7:55Implementation order matters
- 9:20Should you implement this?
- 10:05Summary and Q&A
related talks
15mGoing global: building for a multilingual world
23mFinally OS-Level Per-App Language Settings Are Supported!
38mTricky Backwards-Compatible Localization
27mTexts, dates, numbers, currencies, plurals, etc. App internationalization guide
14mBuilding for a multilingual world
48mTips for Multilingual Support in 17 Countries
46mWhen in Rome, speak... maybe not Italian?
52mAndroid Internationalization: How to Design an App at Global Scale
