Youki Users
1.0 · GitHub
More about this app
Standalone Android multi-user manager to create, switch and delete user profiles with custom photos.
Youki Users
A standalone Android multi-user manager, split out of YoukiDex.
Features
- List users (ID, "You" and "Active" badges)
- Create a new user with a photo (still image or GIF) — the photo is optional
- Change the photo of any existing user
- Switch between users and delete them (the primary user, ID 0, is protected)
- Works through Shizuku (primary) or root (fallback)
- Photos are shown inside the app; with root the app also sets the system user icon
- English and Arabic UI, light/dark, dynamic colors
What was removed from YoukiDex
- App cloning into the new user (
pm install-existingfor the app and for Shizuku) - Automatic permission granting (WRITE_SECURE_SETTINGS, notifications, media, ...)
- Enabling the accessibility service, notification listener and device admin
- Everything unrelated to users (dock, launcher, wallpapers, plugins, cast, ...)
Creating a user is now just pm create-user plus setting the photo.
Build
Open the folder in Android Studio (JDK 17), or run:
./gradlew assembleDebug
Then install the APK, start Shizuku, and grant the app permission.
Photos
- The photo is always saved inside the app and shown in the user list. This is all you get with Shizuku.
- With root (
su), the app additionally sets the photo as the system user icon (Settings / lock screen) as a silent best-effort step, using a tiny helper (RootIconRunner) started throughsu+app_process. - Shizuku is deliberately not used to change the system icon: the adb/shell user lacks
MANAGE_USERSon many devices, which only produced long confusing errors. - The app only shows a short "Photo saved" message. Any root failure is written to logcat
(tag
YoukiUsers), not shown on screen. - A GIF animates inside the app; the system icon (root only) uses its first frame.
How Shizuku is used
Can create, list, switch and delete Android users via `pm` and `am` shell commands through Shizuku.
This is an AI-assisted analysis of Shizuku-related usages in the app's public source code. It is best effort, so it may not catch every single usage.
How this app uses Shizuku
Shizuku provides the privileged shell access the app uses to manage Android user profiles. All operations run as the shell user through Shizuku, so the app itself needs no extra permissions.
- List user profiles: shows all device users and their running state by reading the output of the
pm list usersshell command through Shizuku. - Create user profiles: creates a new user with the name typed in the app using the
pm create-usershell command through Shizuku. - Switch active user: switches the device to the selected user with the
am switch-usershell command through Shizuku. - Delete user profiles: removes the selected user profile with the
pm remove-usershell command through Shizuku.
Android APIs or commands used
pm list userspm create-userpm remove-useram switch-user
Notable details
The primary user (ID 0) cannot be deleted; the app blocks that operation.
Changelog
What's new for version 1.0
Full Changelog: https://github.com/mrYouki/Youki-Engine/commits/1.0
Permissions
4 permissions requested