无法通过扬声器播放视频音频 - iOS

Cannot play video audio via speakers - iOS

我有一个 iOS 9 应用程序,我已经将 AVPlayerViewController 实现到我的一个视图控制器中。我正在尝试播放视频。我注意到的一个问题是,如果我插入耳机,耳机中的音频播放效果很好。但是如果我拔下耳机,音频将从 iPhone 顶部的小耳机播放,而不是从主扬声器播放。我怎样才能改变这个?这是我的代码:

// Setup the video player view.
AVPlayerViewController *playerViewController = [[AVPlayerViewController alloc] init];
playerViewController.player = [AVPlayer playerWithURL:pass_URL];
self.player_view = playerViewController;
self.player_view.view.frame = self.view.frame;
[self.view addSubview:playerViewController.view];
self.view.autoresizesSubviews = TRUE;
[self.player_view.player play];

我已将以下框架导入到我的 Xcode 项目中:

#import <AVFoundation/AVFoundation.h>
#import <AVKit/AVKit.h>

丹,谢谢你的时间。

您需要为您的 AVAudioSession 添加路由更改观察器 (AVAudioSessionRouteChangeNotification)。然后,您可以检测耳机的移除并在必要时自行决定路由(例如使用 overrideOutputAudioPort)。