[iOS开发]AVAudioRecorder真机录音文件保存不全解决办法

  1. IOS开发实现录音功能

    之前写过博客录音功能的实现,之前在模拟机可以正常运行,今天想在真机进行调试时发现录音功能有问题。为了改这个bug也学到了一些东西,决定记录一下。

起因:录音功能在真机无法运行

首先想到的是我想看一下自己保存的录音文件是否有真正录到声音,是保存文件有问题,或是真机权限问题,还是语音识别的转换有问题?一点点进行解决

第一步:使用了两个不同的真机 权限一样 所以权限原因被排除

第二步:如何查询程序在真机中的缓存文件?

apple的真机与安卓不同,你无法查看内部文件 我们只能通过连接Xcode将真机连接 然后将真机中的缓存文件下载到电脑中

Xcode连接到真机 点Devices and Simulators
在这里插入图片描述
下载到我们的电脑上
在这里插入图片描述

下载好后双击 选择显示包内容
在这里插入图片描述

按照之前博客的内容 .aiff就是我们的文件
在这里插入图片描述

可以看到录音文件只有4kb
我们再次使用模拟机进行录音 并通过录音路径获取录音文件
在这里插入图片描述
保底都是600kb以上 所以应该是录音文件出了问题

第三步:现在已经知道是录音文件的问题 那么如何解决这个问题呢?

接下来就是不断百度 不断搜Github
看过别人的demo后发现加入下面代码真机就可以调用录音文件了

	AVAudioSession *audioSession = [AVAudioSession sharedInstance];
    [audioSession setCategory:AVAudioSessionCategoryPlayAndRecord error:nil];
    [audioSession setActive:YES error:nil];              if ([audioSession respondsToSelector:@selector(requestRecordPermission:)]) {
            [audioSession performSelector:@selector(requestRecordPermission:) withObject:^(BOOL granted) {
                if (granted) {
                    // Microphone enabled code
                } else {
                    // Microphone disabled code
                }
            }];
        }
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值