{"id":27114988,"url":"https://github.com/bguerradev/bluetoothvolumelock","last_synced_at":"2026-05-02T06:40:08.378Z","repository":{"id":285739476,"uuid":"959154252","full_name":"bguerraDev/BluetoothVolumeLock","owner":"bguerraDev","description":"Bluetooth Volume Lock is a service designed to keep media volume constant on Android. Android 15 (API 34) automatically lowers the volume for safety reasons. It's ideal for users who exercise with headphones and want to keep their volume constant.","archived":false,"fork":false,"pushed_at":"2025-04-02T11:40:49.000Z","size":107,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":1,"default_branch":"main","last_synced_at":"2025-04-02T12:33:27.955Z","etag":null,"topics":["android","android-15","automation","bluetooth","foreground-service-android","gym-app","kotlin","service-android","volume-control"],"latest_commit_sha":null,"homepage":"","language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":"mit","status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/bguerraDev.png","metadata":{"files":{"readme":"README.en.md","changelog":null,"contributing":"CONTRIBUTING.en.md","funding":null,"license":"LICENSE","code_of_conduct":null,"threat_model":null,"audit":null,"citation":null,"codeowners":null,"security":null,"support":null,"governance":null,"roadmap":null,"authors":null,"dei":null,"publiccode":null,"codemeta":null}},"created_at":"2025-04-02T11:00:43.000Z","updated_at":"2025-04-02T11:57:44.000Z","dependencies_parsed_at":"2025-04-02T12:44:18.418Z","dependency_job_id":null,"html_url":"https://github.com/bguerraDev/BluetoothVolumeLock","commit_stats":null,"previous_names":["bguerradev/bluetoothvolumelock"],"tags_count":0,"template":false,"template_full_name":null,"repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bguerraDev%2FBluetoothVolumeLock","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bguerraDev%2FBluetoothVolumeLock/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bguerraDev%2FBluetoothVolumeLock/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/bguerraDev%2FBluetoothVolumeLock/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/bguerraDev","download_url":"https://codeload.github.com/bguerraDev/BluetoothVolumeLock/tar.gz/refs/heads/main","host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":247595373,"owners_count":20963941,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2022-07-04T15:15:14.044Z","host_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub","repositories_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories","repository_names_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repository_names","owners_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners"}},"keywords":["android","android-15","automation","bluetooth","foreground-service-android","gym-app","kotlin","service-android","volume-control"],"created_at":"2025-04-07T04:39:37.671Z","updated_at":"2026-05-02T06:40:08.373Z","avatar_url":"https://github.com/bguerraDev.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# 🎧 Bluetooth Volume Lock\n\n📘 [Read this in Spanish](README.md)\n\n**Bluetooth Volume Lock** is an Android service that **keeps your media volume steady** when you connect Bluetooth headphones. On Android 15+ (API 34), the system automatically reduces the volume to a \"safe level\" when using headphones at high volume for a prolonged time.\n\n\u003e This app solves that issue by restoring your original volume automatically — ideal for gym sessions 🏋️‍♂️ or extended headphone use.\n\n---\n\n## 🔧 Features\n\n- ✅ Monitors Bluetooth connections\n- 🔊 Restores original media volume if Android lowers it for safety\n- 📲 Runs as a **foreground service**\n- 🧪 Currently compatible with **Android 15 (API 34)** only\n\n---\n\n## 📸 Screenshot\n\nHere you can to see the problem of volume in API+34 with bluetooth and annoying notification:\n\n\u003cp float=\"left\"\u003e\n  \u003cimg src=\"screenshots/image_1.png\" width=\"45%\" /\u003e\n\u003c/p\u003e\n\n---\n\n## 📦 Installation\n\n1. Clone the project:\n\n```bash\ngit clone https://github.com/bguerraDev/BluetoothVolumeLock.git\n```\n\n2. Open it in Android Studio  \n3. Replace `targetMacAddress` and `device.name` with your own  \n4. Connect your device  \n5. Run the project  \n6. Manually grant the **Nearby Devices** permission on your phone\n\n---\n\n## 🧪 Start the service manually using ADB\n\nUse this command:\n\n```bash\nadb shell am start-foreground-service -n com.bryanguerra.bluetoothvolumelock/.BluetoothVolumeService\n```\n\n---\n\n## 💡 Recommendations\n\n- Make sure you have permission to modify system volume (API 34+ needs additional permission)\n- Requires access to nearby devices (`BLUETOOTH_CONNECT` on Android 15)\n\n---\n\n## 📃 License\n\nThis project is licensed under the **MIT License** – see the [LICENSE](./LICENSE) file for details.\n\n---\n\n### 🤖 Built with Kotlin + Android Studio\n\n![Kotlin](https://img.shields.io/badge/Kotlin-0095D5?logo=kotlin\u0026logoColor=fff\u0026style=flat)\n![Android](https://img.shields.io/badge/Android_Studio-3DDC84?logo=android-studio\u0026logoColor=white\u0026style=flat)\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbguerradev%2Fbluetoothvolumelock","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fbguerradev%2Fbluetoothvolumelock","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fbguerradev%2Fbluetoothvolumelock/lists"}