{"id":50647130,"url":"https://github.com/sshpc/autovolume","last_synced_at":"2026-06-07T13:30:47.175Z","repository":{"id":361066560,"uuid":"1252897541","full_name":"sshpc/autovolume","owner":"sshpc","description":"根据环境噪音自动调节媒体音量的 Android 应用","archived":false,"fork":false,"pushed_at":"2026-05-29T03:23:12.000Z","size":109,"stargazers_count":0,"open_issues_count":0,"forks_count":0,"subscribers_count":0,"default_branch":"main","last_synced_at":"2026-05-29T05:14:52.811Z","etag":null,"topics":[],"latest_commit_sha":null,"homepage":null,"language":"Kotlin","has_issues":true,"has_wiki":null,"has_pages":null,"mirror_url":null,"source_name":null,"license":null,"status":null,"scm":"git","pull_requests_enabled":true,"icon_url":"https://github.com/sshpc.png","metadata":{"files":{"readme":"README.md","changelog":null,"contributing":null,"funding":null,"license":null,"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,"zenodo":null,"notice":null,"maintainers":null,"copyright":null,"agents":null,"dco":null,"cla":null}},"created_at":"2026-05-29T01:29:08.000Z","updated_at":"2026-05-29T03:23:16.000Z","dependencies_parsed_at":null,"dependency_job_id":null,"html_url":"https://github.com/sshpc/autovolume","commit_stats":null,"previous_names":["sshpc/autovolume"],"tags_count":1,"template":false,"template_full_name":null,"purl":"pkg:github/sshpc/autovolume","repository_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sshpc%2Fautovolume","tags_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sshpc%2Fautovolume/tags","releases_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sshpc%2Fautovolume/releases","manifests_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sshpc%2Fautovolume/manifests","owner_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/owners/sshpc","download_url":"https://codeload.github.com/sshpc/autovolume/tar.gz/refs/heads/main","sbom_url":"https://repos.ecosyste.ms/api/v1/hosts/GitHub/repositories/sshpc%2Fautovolume/sbom","scorecard":null,"host":{"name":"GitHub","url":"https://github.com","kind":"github","repositories_count":286080680,"owners_count":34023902,"icon_url":"https://github.com/github.png","version":null,"created_at":"2022-05-30T11:31:42.601Z","updated_at":"2026-05-26T15:22:16.424Z","status":"online","status_checked_at":"2026-06-07T02:00:07.652Z","response_time":124,"last_error":null,"robots_txt_status":"success","robots_txt_updated_at":"2025-07-24T06:49:26.215Z","robots_txt_url":"https://github.com/robots.txt","online":true,"can_crawl_api":true,"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":[],"created_at":"2026-06-07T13:30:46.594Z","updated_at":"2026-06-07T13:30:47.165Z","avatar_url":"https://github.com/sshpc.png","language":"Kotlin","funding_links":[],"categories":[],"sub_categories":[],"readme":"# AutoVolume - 自动音量调节\n\n根据环境噪音自动调节媒体音量的 Android 应用。\n\n## 功能特性\n\n- 🎤 **实时噪音检测** — AudioRecord 采集麦克风数据，计算 dB 分贝值\n- 🔊 **自动音量调节** — 根据噪音-音量映射曲线自动调节 STREAM_MUSIC\n- 💤 **智能节能** — 屏幕关闭自动降低检测频率\n\n## 技术栈\n\n| 项目 | 选型 |\n|------|------|\n| 语言 | Kotlin |\n| UI | Jetpack Compose + Material 3 |\n| 架构 | MVVM |\n| 异步 | Coroutines + Flow/StateFlow |\n| 存储 | DataStore Preferences |\n| minSdk | 29 (Android 10) |\n| targetSdk | 35 (Android 15) |\n\n## 项目结构\n\n```\napp/src/main/java/com/autovolume/\n├── audio/          # 音频采集与分析\n│   └── AudioAnalyzer.kt\n├── volume/         # 音量控制\n│   └── VolumeController.kt\n├── headset/        # 耳机检测\n│   └── HeadsetDetector.kt\n├── service/        # 前台服务\n│   └── AutoVolumeService.kt\n├── receiver/       # 开机广播\n│   └── BootReceiver.kt\n├── datastore/      # 数据持久化\n│   └── SettingsDataStore.kt\n├── model/          # 数据模型\n│   ├── AppSettings.kt\n│   └── DetectionResult.kt\n├── ui/             # UI 层\n│   ├── MainViewModel.kt\n│   ├── theme/Theme.kt\n│   ├── components/DbMeter.kt\n│   └── screens/ (Home/Settings/Advanced)\n├── util/           # 工具类\n│   └── PermissionHelper.kt\n├── AutoVolumeApp.kt\n└── MainActivity.kt\n```\n\n## 编译运行\n\n1. 用 Android Studio 打开 `AutoVolume` 目录\n2. 等待 Gradle Sync 完成\n3. 连接手机或启动模拟器\n4. 点击 Run ▶️\n\n## 使用说明\n\n1. 首次启动会申请录音和通知权限\n2. 在主页开启\"自动音量调节\"开关\n3. 连接耳机（蓝牙或有线）\n4. 选择运行模式（推荐\"平衡模式\"）\n5. 在设置中调整音量映射曲线和各项参数\n\n## 权限说明\n\n| 权限 | 用途 |\n|------|------|\n| RECORD_AUDIO | 麦克风检测环境噪音 |\n| POST_NOTIFICATIONS | 前台服务通知 (Android 13+) |\n| FOREGROUND_SERVICE_MICROPHONE | 前台服务使用麦克风 (Android 14+) |\n| RECEIVE_BOOT_COMPLETED | 开机自启动 |\n| REQUEST_IGNORE_BATTERY_OPTIMIZATIONS | 电池优化白名单 |\n\n## 注意事项\n\n- 部分国产手机需要手动允许自启动和后台运行权限\n- 建议关闭电池优化以确保后台稳定运行\n- 首次使用请在安静环境下测试映射曲线是否合适\n","project_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsshpc%2Fautovolume","html_url":"https://awesome.ecosyste.ms/projects/github.com%2Fsshpc%2Fautovolume","lists_url":"https://awesome.ecosyste.ms/api/v1/projects/github.com%2Fsshpc%2Fautovolume/lists"}