gpt4 book ai didi

iphone - AVAudioPlayer 后台任务不起作用 [iOS]

转载 作者:行者123 更新时间:2023-11-29 04:41:42 25 4
gpt4 key购买 nike

我已经尝试了一切:

-设置信息.plist 所需的后台模式:应用程序播放音频;

-设置播放器:

 [[AVAudioSession sharedInstance] setDelegate: self];

// allow app continue to play when the screen is locked
[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback
error:nil];

UInt32 doSetProperty = 0;
AudioSessionSetProperty ( kAudioSessionProperty_OverrideCategoryMixWithOthers,
sizeof (doSetProperty),
&doSetProperty
);

// Registers the audio route change listener callback function
AudioSessionAddPropertyListener (
kAudioSessionProperty_AudioRouteChange,
audioRouteChangeListenerCallback,
self
);

// Activates the audio session.

NSError *activationError = nil;
[[AVAudioSession sharedInstance] setActive: YES error: &activationError];

[appSoundPlayer prepareToPlay];
[appSoundPlayer setVolume: 1.0];
[appSoundPlayer setDelegate: self];
[[UIApplication sharedApplication] beginReceivingRemoteControlEvents];

我忘记了什么?有什么问题吗?

最佳答案

您需要将音频类别设置为播放:

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback error:&error];

如果您随后希望允许与其他应用程序混合音频,则可以添加此选项,只需确保将 Audio Session 设置为事件状态之前执行此操作即可。

[[AVAudioSession sharedInstance] setCategory:AVAudioSessionCategoryPlayback withOptions:AVAudioSessionCategoryOptionMixWithOthers error:nil];

现在您可以将 Audio Session 设置为事件状态:

[[AVAudioSession sharedInstance] setActive:YES error:&error];

关于iphone - AVAudioPlayer 后台任务不起作用 [iOS],我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/10294130/

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