Take control of Bluetooth reconnects, volume, sound output, and audio codecs on Android.
Download APK · Report a problem · MIT license
A Bluetooth audio utility built to solve reconnect, volume and output problems on a Pixel 10 Pro. Requires Android 12+ and Shizuku; no root required.
- Reconnect control: experimentally suppress startup reconnects while keeping devices paired, using BlueCodec's Bluetooth Quick Settings tile.
- Volume recovery: restore synchronization when Android loses the Bluetooth volume registration, which can leave speakers quiet or volume controls unlinked.
- Sound output: switch between the phone speaker and connected Bluetooth audio devices, even when Android's output picker gets stuck.
- Preferred codecs: save LDAC, aptX HD, aptX, AAC or SBC per device and reapply it on reconnect, when supported by both devices.
- Install and start Shizuku.
- Install the latest APK or use the Obtainium button above.
- Open BlueCodec and grant Nearby devices, Shizuku access and notifications.
- Connect a device, choose a codec and enable Apply on reconnect if available. Swipe between device cards to configure each one; use Sound output to change playback routing.
Obtainium: add https://github.com/nixolas1/bluecodec as a GitHub source to
install and track release updates. No custom APK filter is currently needed.
After restarting your phone, start Shizuku again and reopen BlueCodec.
Enable Block automatic reconnect, tap Add Bluetooth tile, then use BlueCodec's tile to turn Bluetooth off and on. Android's built-in tile does not run the blocking step. Connect manually from Settings or Connect in the app.
A 2-second startup window blocks reconnects; afterward, headset-initiated connections are allowed while Android's outgoing automatic reconnect policy stays disabled. This timing and headset behavior still need physical verification. Enabling the option alone does not disconnect current playback.
Before uninstalling or clearing app data: turn Bluetooth and Shizuku on, turn Block automatic reconnect off, and let restoration finish. Otherwise, headset profiles may remain blocked. Official updates can be installed in place; locally built debug APKs use a different signing key.
Tested on Pixel 10 Pro / Android 17, with Sony WH-1000XM3, HK Onyx Studio 6 and a Samsung soundbar. Workarounds depend on firmware; installation on another phone does not guarantee support.
Reconnect control covers classic A2DP/HFP audio; output switching covers A2DP. LE Audio, hearing aids and casting are outside the output control's scope. Codec preferences cannot add unsupported codecs or force sample rate/bit depth. Volume recovery targets a specific synchronization fault, not every low-volume problem. If Settings cannot connect, try Connect in BlueCodec.
See tested behavior and limits and the device adaptation guide.
No Internet permission, analytics, ads or account. Device preferences stay local. Shizuku provides Bluetooth control; the foreground notification keeps monitoring running. The Settings connection bridge reads a filtered Bluetooth log stream without saving its contents.
Build with JDK 17 and Android SDK 36:
./gradlew assembleDebug lintDebug assembleDebugAndroidTestSee build, test and signing instructions. Report an issue with your phone, Android build, Shizuku version, audio device and steps to reproduce. Redact MAC addresses and unrelated personal information. Compatibility fixes are welcome.
MIT license. Uses Shizuku API and Material Components.


