Historically, setting a custom MAC address on Android was very easy for rooted users. Starting with Android 12, however, Google's implementation of MAC address randomization has made it impossible, as the MAC address is always changed when the network state is altered. If you have encountered this problem, then you need Libresposed! Libresposed is an Xposed module based on MACsposed before it went proprietary (1.2.0+) that blocks the MAC address randomizer on Android 12 through 14 and allows you to once again make use of your favorite tools for setting your MAC address. Simply install Libresposed, enable it, and go back to randomizing your MAC address using your favorite tools for doing so!
Libresposed will always be free software and will not require a weird 10$ lifetime license (or the subscription flavors ranging from 1$ to 5$) to unlock its functionality unlike MACsposed where it went the proprietary route starting in 1.2.0.
To use Libresposed:
- Install LSposed. This requires your device to be rooted with Magisk or KernelSU. Installation instructions for LSPosed are available here.
- Install Libresposed.
- Activate the Libresposed module in the LSposed user interface.
- Reboot your device and sign in.
- Open the quick settings panel. The Libresposed tile will appear.
- Toggle the Libresposed tile on or off to enable or disable it.
- Use your favorite tool for setting a custom MAC address!
To build the app, you need to have the following tools installed:
- Android Studio
- Gradle
- JDK 17
Then, you can build the app by running the following command:
Due to libxposed not being available on Maven Central, you need to build first the libxposed library and then publish it to your local Maven repository.
Either by running the following script:
./setup-libxposed.shOr manually by running the following commands:
git clone https://github.com/libxposed/api.git
git clone https://github.com/libxposed/service.git
cd api
./gradlew :api:publishApiPublicationToMavenLocal
cd ../service
# You need to apply a patch to the service project to prevent failures when building the app
git apply ../patch-java-requirement.patch
./gradlew :service:publishServicePublicationToMavenLocalThen, you can build the app by running the following command:
./gradlew build





