我正在使用RPSystemBroadcastPickerView
显示一个picker视图,用户可以从中选择一个广播服务来录制屏幕。根据文档,preferredExtension
应该允许我设置选取器应该显示哪个广播扩展。
代码非常简单:
let broadcastPickerView = RPSystemBroadcastPickerView(frame: CGRect(x: 0, y: 0, width: 51, height: 51))
view.addSubview(broadcastPickerView)
broadcastPickerView.preferredExtension = "com.milan.nosal.broadcast-extension"
broadcastPickerView.backgroundColor = .clear
broadcastPickerView.showsMicrophoneButton = false
其中"com.milan.nosal.broadcast-extension"
是我希望选择器提供的扩展的捆绑标识符(我多次检查了它的正确性)。
但是,当点击该控件时,首先弹出窗口显示为空选择:
关闭它并再次轻触该控件后,它会显示正确的扩展。这只会在安装(或重新安装)应用程序时发生,在显示之后,它会显示always。
这是iOS 12测试版的错误,还是我做错了什么?我可以“预先注册”这个扩展来解决这个问题吗?
编辑:
在发布应用程序后,我们遇到了与我们的用户相同的问题,但这次甚至没有多次点击控件的帮助-选择器总是空的!该扩展似乎安装正确,因为它可以从控制中心启动。
现在运行在官方版本上。
发布于 2019-04-12 10:42:18
我认为这是苹果的bug,但在我测试了iOS 12.2之后,它被修复了。
发布于 2021-09-10 15:39:25
对于任何可能有相同问题的人,如果您的分机部署目标高于您正在使用的设备,则当您尝试开始广播会话时,它将不会显示应用程序。在这件事上浪费了一整天。
发布于 2018-10-15 22:45:18
我也有同样的问题,看起来Xcode在如何在你的应用中安装broadcastExtension有一些问题。对我来说,它只与Debug模式相关。要查看正确的UI,请尝试以旧方式启用广播一次(control center -> deep touch -> start broadcast),然后在您的BroadcastPickerView中您将看到正确的UI (您正在按iOS以更新有关扩展的信息)。无法在发布模式下复制。
https://stackoverflow.com/questions/52312814
复制相似问题