Skip to content

Commit 6211c4c

Browse files
teng-linclaude
andcommitted
docs: add MAC address injection guide for OxygenOS 16 non-rooted setup
Add documentation for the MAC address injection workaround needed on non-rooted SDK 36 devices where the system's bluetooth_address is not accessible to user apps. Include step-by-step instructions using adb. Co-Authored-By: Claude Haiku 4.5 <noreply@anthropic.com>
1 parent 5e6bcb6 commit 6211c4c

1 file changed

Lines changed: 19 additions & 0 deletions

File tree

README.md

Lines changed: 19 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,6 +73,25 @@ If you are using ColorOS/OxygenOS 16, you don't need root except for customizing
7373
7474
Until then, you must xposed. I used to provide a non-xposed method too, where the module used overlayfs to replace the bluetooth library with a locally patched one, but that was broken due to how various devices handled overlayfs and a patched library. With xposed, you can also enable the DID hook enabling a few extra features.
7575

76+
#### Setup for OxygenOS/ColorOS 16 (Non-rooted)
77+
78+
For multi-device audio switching to work properly on non-rooted OxygenOS 16, you need to inject your phone's Bluetooth MAC address into the app's settings. This is a one-time setup:
79+
80+
1. **Get your phone's Bluetooth MAC address:**
81+
- Go to Settings → About → Device Details → Bluetooth Address
82+
- Or use: `adb shell settings get secure bluetooth_address` (requires running once with a recently-root device or use the Settings method)
83+
84+
2. **Inject the MAC address via adb:**
85+
```bash
86+
adb shell "run-as me.kavishdevar.librepods sed -i 's|<string name=\"self_mac_address\"></string>|<string name=\"self_mac_address\">XX:XX:XX:XX:XX:XX</string>|' shared_prefs/settings.xml"
87+
```
88+
Replace `XX:XX:XX:XX:XX:XX` with your actual Bluetooth MAC address (e.g., `AC:C0:48:67:E6:EA`)
89+
90+
3. **Restart the app** for the changes to take effect
91+
92+
> [!NOTE]
93+
> This is needed because non-rooted apps on SDK 36+ cannot access the system's `bluetooth_address` setting. Without this, audio source switching between devices won't work correctly, and the app will lose ANC/transparency control when you switch to another device.
94+
7695
## Changing VendorID in the DID profile to that of Apple
7796

7897
Turns out, if you change the VendorID in DID Profile to that of Apple, you get access to several special features!

0 commit comments

Comments
 (0)