Android 息屏录音

问题

解决Android录音的息屏之后无法录制声音的问题,看日志发现,录音程序并没有中断,但是录制到的数据均是byte为0的数据,即空数据。

测试机为Android 13系统

废话

网上一搜一大堆,ai也是一问也回答得头头是道,源码给的也能录音,就是一息屏就哑火,网上找了好多源码,大都是Android 10以下系统的。

最后终于发现,网上的代码没错,ai也没错,就他么在AndroidManifest.xml中漏了最关键的一句:android:foregroundServiceType="microphone"

实现

具体实现就略过了,这里仅说个大概步骤:

1、起一个服务RecordService

2、在AndroidManifest.xml注册这个RecordService

复制代码
        <service android:name="com.example.record.RecordService"
            android:foregroundServiceType="microphone"
            android:exported="false"
            tools:ignore="ForegroundServicePermission" />

最关键就是这一句android:foregroundServiceType="microphone",之前就是漏了这一句,死活不行。

3、在这个RecordService中使用startForeground方法将这个服务设置成前台服务。

4、在这个RecordService中实现录音逻辑。

参考

前台服务传送门:

服务概览 | Background work | Android Developers

录音传送门:

https://blog.csdn.net/qq_33601179/article/details/89376082?spm=1001.2014.3001.5501

相关推荐
嵩风抚3 分钟前
一款HK银行APP的业务+技术
android·flutter·react native·html5
00后程序员张2 小时前
怎么用 Egret(白鹭引擎)打包 iOS 应用并上架 App Store?
android·ios·小程序·https·uni-app·iphone·webview
mmsx2 小时前
MapLibre 实战 09|Bug 单写着"地图被风刮走了":一个瓦片源工厂,是三个线上事故换来的
android·前端·开源
一技安身3 小时前
【信创】统信UOS 银河麒麟离线部署Python3.11完整方案
android·java·python3.11
墨狂之逸才3 小时前
Android WebView 初始缩放:什么时候该设置 100%,什么时候不要设置
android
淡淡的香烟3 小时前
AndroidKMP之导航和WebView
android
天空之城--15 小时前
Android逆向安全合规接单指南
android·安全
消失的旧时光-194317 小时前
Android 系统层扫盲 09:AMS、ATMS、WMS、PMS 到底分别管什么?
android·wms·pms·ams·aosp·atms
Godikov17 小时前
Android 系统级设备应用踩坑实录:sharedUserId 签名、SDK 授权失败 -4、开机自启与 U 盘 OTA 升级
android
IT毕设实战小研21 小时前
基于大数据的国内主要农作物产量趋势分析与可视化
android·java·大数据·django·课程设计