Languager - Language Spoofing Xposed Module
Overview
Languager is an Xposed module that allows you to change the language of specific Android applications, without changing your system language. This is particularly useful against apps that enforce system language settings or buggy apps that fail to show the selected language from app’s settings.
Features
- Per-App Language Selection: Choose a different language for each app independently
- Comprehensive Language Support: 26+ languages available including English, French, German, Spanish, Italian, Portuguese, Russian, Chinese, Japanese, Korean, Arabic, Hebrew, Hindi, and many more
- User-Friendly Interface: Easy-to-use UI with app search functionality and intuitive language selection
- Wide Compatibility: Works on Android 5.0+ (API 21+) with support for both older and newer Android versions
- Efficient Hooking Mechanism: Hooks all locale-related methods to ensure complete language spoofing
Technical Details
Requirements
- Android device with Xposed framework installed (LSPosed, EdXposed, etc.)
- Android 5.0+ (API 21+)
Installation
- Install the Languager APK
- Enable the module in your Xposed framework manager
- Select the apps you want to apply language spoofing to
- Reboot your device
- Open the Languager app to configure language settings for each app
LSPosed Repository Installation
You can also install Languager directly from the LSPosed repository:
- Open LSPosed Manager
- Go to Repository tab
- Add the repository URL:
https://mon231.github.io/com.rel.languager
- Find Languager in the list and install it
- Enable the module and reboot
Usage
- Open the Languager app
- Use the search bar to find specific apps
- Select your preferred language for each app from the dropdown menu
- Click “Save Settings” to apply changes
- Reboot or restart the target apps for changes to take effect
Supported Languages
- English
- French (Français)
- German (Deutsch)
- Spanish (Español)
- Italian (Italiano)
- Portuguese (Português)
- Russian (Русский)
- Chinese (中文)
- Japanese (日本語)
- Korean (한국어)
- Arabic (العربية)
- Hebrew (עברית)
- Hindi (हिन्दी)
- Bengali (বাংলা)
- Punjabi (ਪੰਜਾਬੀ)
- Tamil (தமிழ்)
- Telugu (తెలుగు)
- Malayalam (മലയാളം)
- Thai (ไทย)
- Vietnamese (Tiếng Việt)
- Indonesian (Bahasa Indonesia)
- Malay (Bahasa Melayu)
- Turkish (Türkçe)
- Dutch (Nederlands)
- Polish (Polski)
- Swedish (Svenska)
Implementation Details
- Preference Handling: Uses
MODE_WORLD_READABLE
with LSPosed’s xposedsharedprefs
flag for secure preference sharing
- Dynamic Locale Creation: Creates locale objects for all supported languages
- API Level Detection: Automatically detects device API level and uses appropriate hooking methods
- UI Optimization: Efficient app list loading with search functionality
- Compatibility Layers: Special handling for different Android versions and manufacturer customizations
Building from Source
Prerequisites
- Android Studio 4.0+
- JDK 11+
- Gradle 7.0+
Local Build (debug-mode)
-
Clone the repository:
git clone https://github.com/mon231/com.rel.languager languager
cd languager
-
Build:
./gradlew clean assembleDebug
-
Find the APK at app/build/outputs/apk/debug/app-debug.apk
Troubleshooting
- Module not working: Make sure it’s enabled in LSPosed/EdXposed Manager
- Language not changing: Try restarting the app or rebooting your device
Acknowledgements