gpt4 book ai didi

ios - 在调用iOS SDK的电话期间播放音乐文件时出现问题

转载 作者:行者123 更新时间:2023-12-03 02:15:50 24 4
gpt4 key购买 nike

我有两段代码:

代码1-正在通过入耳式扬声器播放音乐文件:

NSString *tileDirectory = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"8Ocean.mp3"];
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath:tileDirectory];
NSError *error=nil;
self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:&error];
if(!error)
{
[self.audioPlayer prepareToPlay];
UInt32 sessionCategory = kAudioSessionCategory_PlayAndRecord;
AudioSessionSetProperty(kAudioSessionProperty_AudioCategory, sizeof(sessionCategory), &sessionCategory);
[self.audioPlayer play];
}
else
{
NSLog(@"%@",error.localizedDescription);
}

代码2-在通话过程中播放音乐文件(视通话过程中的用户设置而定,路由到入耳式或免提电话)
NSString *tileDirectory = [[[NSBundle mainBundle] resourcePath] stringByAppendingPathComponent:@"8Ocean.mp3"];
NSURL *fileURL = [[NSURL alloc] initFileURLWithPath:tileDirectory];
NSError *error=nil;
self.audioPlayer = [[AVAudioPlayer alloc] initWithContentsOfURL:fileURL error:&error];
if(!error)
{
[self.audioPlayer prepareToPlay];
self.audioPlayer.volume=10.0;
UInt32 sessionCategory = kAudioSessionOverrideAudioRoute_Speaker;
AudioSessionSetProperty (kAudioSessionProperty_OverrideAudioRoute,sizeof (audioRouteOverride),&audioRouteOverride);
[self.audioPlayer play];
}
else
{
NSLog(@"%@",error.localizedDescription);
}

我的问题是:

代码1和2独立运作良好。但是,在使用代码1之后,代码2将根本无法工作(除非该应用被终止并重新启动)

我已经尝试了所有可以想到的方法,但无法解决问题的出处。

最佳答案

您的应用需要处理来自电话的音频 session 中断,以便音频处理不会被您的应用终止。

关于ios - 在调用iOS SDK的电话期间播放音乐文件时出现问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20119041/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com