diff --git a/.changes/broadcast-picker-private-selector b/.changes/broadcast-picker-private-selector new file mode 100644 index 000000000..e1415c5dd --- /dev/null +++ b/.changes/broadcast-picker-private-selector @@ -0,0 +1 @@ +patch type="fixed" "Remove non-public buttonPressed: selector from broadcast picker activation" diff --git a/ios/Classes/BroadcastManager.swift b/ios/Classes/BroadcastManager.swift index 104ec055d..3f2c2e5ea 100644 --- a/ios/Classes/BroadcastManager.swift +++ b/ios/Classes/BroadcastManager.swift @@ -16,6 +16,7 @@ import Combine import ReplayKit +import UIKit @available(iOS 13.0, *) final class BroadcastManager { @@ -44,8 +45,10 @@ final class BroadcastManager { view.preferredExtension = preferredExtension view.showsMicrophoneButton = false - let selector = NSSelectorFromString("buttonPressed:") - guard view.responds(to: selector) else { return } - view.perform(selector, with: nil) + guard let button = view.subviews.compactMap({ $0 as? UIButton }).first else { + print("[LiveKit] Unable to find button in RPSystemBroadcastPickerView") + return + } + button.sendActions(for: .touchUpInside) } }