1

我目前正在通过 AudioQueues 播放音频。我想允许用户连接到 Airplay 设备。

如果我创建一个 MPVolumeView 并使用“showsRouteButton”显示路由按钮,我可以成功连接。

有没有办法在不使用 MPVolumeView 的情况下将音频路由更改为 Airplay?还是一个更简单的 Apple 视图,它只是路由按钮?

4

3 回答 3

2

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];
            }
        }
}
于 2013-09-03T15:12:50.117 回答
0

我认为没有其他方法可以显示 Airplay 路由按钮(至少在当前的 SDK iOS 5.1 中)。如果你想显示 AirPlay 选项,你必须使用 MPVolumeView 。

于 2012-01-12T17:58:52.183 回答
0

从 iOS 11 开始,您可以使用 AVRoutePicker :

import AVKit 

let rpv = AVRoutePickerView()
view.addSubview(rpv)
于 2020-02-19T11:35:09.490 回答