我目前正在通过 AudioQueues 播放音频。我想允许用户连接到 Airplay 设备。
如果我创建一个 MPVolumeView 并使用“showsRouteButton”显示路由按钮,我可以成功连接。
有没有办法在不使用 MPVolumeView 的情况下将音频路由更改为 Airplay?还是一个更简单的 Apple 视图,它只是路由按钮?
我目前正在通过 AudioQueues 播放音频。我想允许用户连接到 Airplay 设备。
如果我创建一个 MPVolumeView 并使用“showsRouteButton”显示路由按钮,我可以成功连接。
有没有办法在不使用 MPVolumeView 的情况下将音频路由更改为 Airplay?还是一个更简单的 Apple 视图,它只是路由按钮?
1 隐藏 MPVolumeView 并使其成为全局变量
CGRect frame = CGRectZero;
frame.origin.y = 0;
frame.origin.x = 410; // out of the screen
_volumeView = [[MPVolumeView alloc] initWithFrame:frame];
[_volumeView setShowsVolumeSlider:NO];
[_volumeView setShowsRouteButton:YES];
[self.view addSubview:_volumeView];
2个模拟纽扣带
- (IBAction)handleAirPlay:(id)sender {
for (UIButton *button in _volumeView.subviews)
{
if ([button isKindOfClass:[UIButton class]])
{
[button sendActionsForControlEvents:UIControlEventTouchUpInside];
}
}
}
我认为没有其他方法可以显示 Airplay 路由按钮(至少在当前的 SDK iOS 5.1 中)。如果你想显示 AirPlay 选项,你必须使用 MPVolumeView 。
从 iOS 11 开始,您可以使用 AVRoutePicker :
import AVKit
let rpv = AVRoutePickerView()
view.addSubview(rpv)