Different apps see different versions of your device — one app believes it's running on a Pixel 9 Pro, another thinks it's a Galaxy S25 Ultra, your real device identity stays completely intact. Device Faker by Seyud makes this possible through a Zygisk-based per-app property spoofing system with a modern WebUI, three operation modes, reusable device templates, and a clean TOML configuration format. Surgical, selective, and zero overhead on unconfigured apps.
Core Spoofing Features
Per-app device identity control — three modes, WebUI management, templates, and TOML config. Each app sees only what you decide.
Three Operation Modes
Lite mode — lightweight stealth, minimal property set. Full mode — complete spoofing of all configured build properties. Resetprop mode — extends to read-only properties using resetprop, enabling override of system-immutable values. Per-app mode selection lets you choose the right approach for each target.
WebUI Management Interface
A built-in WebUI accessible from your root manager provides a full graphical interface for all Device Faker operations — real-time status monitoring, template creation/editing, application configuration, and TOML config editing without touching the command line.
Template Management
Create named device templates (e.g., "Pixel 9 Pro", "Galaxy S25 Ultra") and batch-apply them to multiple app package names at once. Update the template once — all associated apps instantly inherit the change. Create, edit, and delete templates directly from the WebUI.
TOML Configuration
Configuration files use the TOML (Tom's Obvious Minimal Language) format — simpler and less error-prone than JSON (no trailing commas or mismatched quotes to debug). Human-readable and directly editable with any text editor or through the WebUI's graphical config editor.
Per-App Precision
Device Faker only hooks into explicitly configured apps. Unconfigured apps are never touched — no injection overhead, no unintended side effects. This targeted approach is both more stable and more efficient than system-wide property substitution.
Zygisk Framework
Built on the Zygisk API — injecting into each app process at Zygote fork time, before the app has a chance to read any device property. Properties are presented as spoofed from the very first read, eliminating the "read before spoof" race condition present in boot-time prop substitution approaches.
The Three Modes — When to Use Each
Device Faker's mode selection is per-app — you can use Lite for one app and Full for another in the same configuration:
Spoofs a minimal, carefully chosen set of properties. Lowest detection footprint. Best for apps that only check one or two key identifiers — reduces the chance of consistency failures from over-spoofing.
Overrides all configured device build properties comprehensively — model, manufacturer, fingerprint, brand, hardware, and all related fields. Best for apps that do thorough device identity checks across many fields.
Extends to read-only properties that cannot be changed through normal Zygisk injection. Uses resetprop to modify system-immutable values — needed for some deeply ingrained device identifiers.
TOML Config Example
Device profiles are stored as .toml files in the module's config directory. Each app package gets its own configuration block:
All of this is editable through the WebUI's graphical interface — no manual TOML editing required unless you prefer it.
Frequently Asked Questions
.toml file specifying which properties to override. The WebUI provides a graphical interface for editing these files without needing to manually write TOML syntax.