ReplayKit Changes for Swift
ReplayKit
Added RPBroadcastConfiguration
Added RPBroadcastController
Added RPBroadcastHandler
Added RPBroadcastSampleHandler
Added RPSampleBufferType.video
Modified RPPreviewViewController
| Declaration | Protocols | |
|---|---|---|
| From | class RPPreviewViewController : UIViewController {
weak var previewControllerDelegate: RPPreviewViewControllerDelegate?
} | -- |
| To | class RPPreviewViewController : UIViewController {
weak var previewControllerDelegate: RPPreviewViewControllerDelegate?
var mode: RPPreviewViewControllerMode
var tabBarItem: UITabBarItem!
var tabBarController: UITabBarController? { get }
var splitViewController: UISplitViewController? { get }
func collapseSecondaryViewController(_ secondaryViewController: UIViewController, for splitViewController: UISplitViewController)
func separateSecondaryViewController(for splitViewController: UISplitViewController) -> UIViewController?
var transitionCoordinator: UIViewControllerTransitionCoordinator? { get }
var isModalInPopover: Bool
var contentSizeForViewInPopover: CGSize
var toolbarItems: [UIBarButtonItem]?
func setToolbarItems(_ toolbarItems: [UIBarButtonItem]?, animated animated: Bool)
var navigationItem: UINavigationItem { get }
var hidesBottomBarWhenPushed: Bool
var navigationController: UINavigationController? { get }
var previewActionItems: [UIPreviewActionItem] { get }
func registerForPreviewing(with delegate: UIViewControllerPreviewingDelegate, sourceView sourceView: UIView) -> UIViewControllerPreviewing
func unregisterForPreviewing(withContext previewing: UIViewControllerPreviewing)
var presentationController: UIPresentationController? { get }
var popoverPresentationController: UIPopoverPresentationController? { get }
func addKeyCommand(_ keyCommand: UIKeyCommand)
func removeKeyCommand(_ keyCommand: UIKeyCommand)
var topLayoutGuide: UILayoutSupport { get }
var bottomLayoutGuide: UILayoutSupport { get }
weak var transitioningDelegate: UIViewControllerTransitioningDelegate?
func updateViewConstraints()
func automaticallyForwardAppearanceAndRotationMethodsToChildViewControllers() -> Bool
func shouldAutomaticallyForwardRotationMethods() -> Bool
var shouldAutomaticallyForwardAppearanceMethods: Bool { get }
func willMove(toParentViewController parent: UIViewController?)
func didMove(toParentViewController parent: UIViewController?)
var childViewControllers: [UIViewController] { get }
func addChildViewController(_ childController: UIViewController)
func removeFromParentViewController()
func transition(from fromViewController: UIViewController, to toViewController: UIViewController, duration duration: TimeInterval, options options: UIViewAnimationOptions = [], animations animations: (@escaping () -> Void)?, completion completion: (@escaping (Bool) -> Void)? = nil)
func beginAppearanceTransition(_ isAppearing: Bool, animated animated: Bool)
func endAppearanceTransition()
var childViewControllerForStatusBarStyle: UIViewController? { get }
var childViewControllerForStatusBarHidden: UIViewController? { get }
func setOverrideTraitCollection(_ collection: UITraitCollection?, forChildViewController childViewController: UIViewController)
func overrideTraitCollection(forChildViewController childViewController: UIViewController) -> UITraitCollection?
var searchDisplayController: UISearchDisplayController? { get }
var isEditing: Bool
func setEditing(_ editing: Bool, animated animated: Bool)
var editButtonItem: UIBarButtonItem { get }
class func attemptRotationToDeviceOrientation()
func shouldAutorotate(to toInterfaceOrientation: UIInterfaceOrientation) -> Bool
var shouldAutorotate: Bool { get }
var supportedInterfaceOrientations: UIInterfaceOrientationMask { get }
var preferredInterfaceOrientationForPresentation: UIInterfaceOrientation { get }
func rotatingHeaderView() -> UIView?
func rotatingFooterView() -> UIView?
var interfaceOrientation: UIInterfaceOrientation { get }
func willRotate(to toInterfaceOrientation: UIInterfaceOrientation, duration duration: TimeInterval)
func didRotate(from fromInterfaceOrientation: UIInterfaceOrientation)
func willAnimateRotation(to toInterfaceOrientation: UIInterfaceOrientation, duration duration: TimeInterval)
func willAnimateFirstHalfOfRotation(to toInterfaceOrientation: UIInterfaceOrientation, duration duration: TimeInterval)
func didAnimateFirstHalfOfRotation(to toInterfaceOrientation: UIInterfaceOrientation)
func willAnimateSecondHalfOfRotation(from fromInterfaceOrientation: UIInterfaceOrientation, duration duration: TimeInterval)
var userActivity: NSUserActivity?
func updateUserActivityState(_ activity: NSUserActivity)
func restoreUserActivityState(_ activity: NSUserActivity)
var inputView: UIView? { get }
var inputAccessoryView: UIView? { get }
var inputAssistantItem: UITextInputAssistantItem { get }
var inputViewController: UIInputViewController? { get }
var inputAccessoryViewController: UIInputViewController? { get }
var textInputMode: UITextInputMode? { get }
var textInputContextIdentifier: String? { get }
class func clearTextInputContextIdentifier(_ identifier: String)
func reloadInputViews()
var keyCommands: [UIKeyCommand]? { get }
func awakeFromNib()
func prepareForInterfaceBuilder()
func accessibilityActivate() -> Bool
func accessibilityIncrement()
func accessibilityDecrement()
func accessibilityScroll(_ direction: UIAccessibilityScrollDirection) -> Bool
func accessibilityPerformEscape() -> Bool
func accessibilityPerformMagicTap() -> Bool
var accessibilityCustomActions: [UIAccessibilityCustomAction]?
func accessibilityElementDidBecomeFocused()
func accessibilityElementDidLoseFocus()
func accessibilityElementIsFocused() -> Bool
func accessibilityAssistiveTechnologyFocusedIdentifiers() -> Set<String>?
func accessibilityElementCount() -> Int
func accessibilityElement(at index: Int) -> Any?
func index(ofAccessibilityElement element: Any) -> Int
var accessibilityElements: [Any]?
var isAccessibilityElement: Bool
var accessibilityLabel: String?
var accessibilityHint: String?
var accessibilityValue: String?
var accessibilityTraits: UIAccessibilityTraits
var accessibilityFrame: CGRect
@NSCopying var accessibilityPath: UIBezierPath?
var accessibilityActivationPoint: CGPoint
var accessibilityLanguage: String?
var accessibilityElementsHidden: Bool
var accessibilityViewIsModal: Bool
var shouldGroupAccessibilityChildren: Bool
var accessibilityNavigationStyle: UIAccessibilityNavigationStyle
var accessibilityHeaderElements: [Any]?
var accessibilityCustomRotors: [UIAccessibilityCustomRotor]?
func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
func performSelector(inBackground aSelector: Selector, with arg: Any?)
class func classForKeyedUnarchiver() -> AnyClass
var classForKeyedArchiver: AnyClass? { get }
func replacementObject(for archiver: NSKeyedArchiver) -> Any?
class func classFallbacksForKeyedArchiver() -> [String]
class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
class func automaticallyNotifiesObservers(forKey key: String) -> Bool
var observationInfo: UnsafeMutableRawPointer?
func willChangeValue(forKey key: String)
func didChangeValue(forKey key: String)
func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
class var accessInstanceVariablesDirectly: Bool { get }
func value(forKey key: String) -> Any?
func setValue(_ value: Any?, forKey key: String)
func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
func mutableArrayValue(forKey key: String) -> NSMutableArray
func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
func mutableSetValue(forKey key: String) -> NSMutableSet
func value(forKeyPath keyPath: String) -> Any?
func setValue(_ value: Any?, forKeyPath keyPath: String)
func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
func value(forUndefinedKey key: String) -> Any?
func setValue(_ value: Any?, forUndefinedKey key: String)
func setNilValueForKey(_ key: String)
func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
func setValuesForKeys(_ keyedValues: [String : Any])
func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
func fileManager(_ fm: FileManager, willProcessPath path: String)
func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
class func cancelPreviousPerformRequests(withTarget aTarget: Any)
func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
var autoContentAccessingProxy: Any { get }
class func version() -> Int
class func setVersion(_ aVersion: Int)
var classForCoder: AnyClass { get }
func awakeAfter(using aDecoder: NSCoder) -> Any?
func provideImageData(_ data: UnsafeMutableRawPointer, bytesPerRow rowbytes: Int, origin x: Int, _ y: Int, size width: Int, _ height: Int, userInfo info: Any?)
}
extension RPPreviewViewController : NSExtensionRequestHandling {
var extensionContext: NSExtensionContext? { get }
}
extension RPPreviewViewController : UIStateRestoring {
var restorationIdentifier: String?
var restorationClass: UIViewControllerRestoration.Type?
func encodeRestorableState(with coder: NSCoder)
func decodeRestorableState(with coder: NSCoder)
func applicationFinishedRestoringState()
}
extension RPPreviewViewController : CVarArg {
}
extension RPPreviewViewController : Equatable, Hashable {
var hashValue: Int { get }
} | CVarArg, Equatable, Hashable, NSExtensionRequestHandling, UIStateRestoring |
Modified RPRecordingErrorCode [enum]
| Declaration | |
|---|---|
| From | enum RPRecordingErrorCode : Int {
case Unknown
case UserDeclined
case Disabled
case FailedToStart
case Failed
case InsufficientStorage
case Interrupted
case ContentResize
} |
| To | enum RPRecordingErrorCode : Int {
case unknown
case userDeclined
case disabled
case failedToStart
case failed
case insufficientStorage
case interrupted
case contentResize
case broadcastInvalidSession
case systemDormancy
} |
Modified RPRecordingErrorCode.contentResize
| Declaration | |
|---|---|
| From | case ContentResize |
| To | case contentResize |
Modified RPRecordingErrorCode.disabled
| Declaration | |
|---|---|
| From | case Disabled |
| To | case disabled |
Modified RPRecordingErrorCode.failed
| Declaration | |
|---|---|
| From | case Failed |
| To | case failed |
Modified RPRecordingErrorCode.failedToStart
| Declaration | |
|---|---|
| From | case FailedToStart |
| To | case failedToStart |
| Declaration | |
|---|---|
| From | case InsufficientStorage |
| To | case insufficientStorage |
Modified RPRecordingErrorCode.interrupted
| Declaration | |
|---|---|
| From | case Interrupted |
| To | case interrupted |
Modified RPRecordingErrorCode.unknown
| Declaration | |
|---|---|
| From | case Unknown |
| To | case unknown |
Modified RPRecordingErrorCode.userDeclined
| Declaration | |
|---|---|
| From | case UserDeclined |
| To | case userDeclined |
Modified RPScreenRecorder
| Declaration | Protocols | |
|---|---|---|
| From | class RPScreenRecorder : NSObject {
class func sharedRecorder() -> RPScreenRecorder
init?()
class func new() -> Self?
func startRecordingWithMicrophoneEnabled(_ microphoneEnabled: Bool, handler handler: ((NSError?) -> Void)?)
func stopRecordingWithHandler(_ handler: ((RPPreviewViewController?, NSError?) -> Void)?)
func discardRecordingWithHandler(_ handler: () -> Void)
weak var delegate: RPScreenRecorderDelegate?
var recording: Bool { get }
var microphoneEnabled: Bool { get }
var available: Bool { get }
} | -- |
| To | class RPScreenRecorder : NSObject {
class func shared() -> RPScreenRecorder
init()
func startRecording(withMicrophoneEnabled microphoneEnabled: Bool, handler handler: (@escaping (Error?) -> Swift.Void)? = nil)
func startRecording(handler handler: (@escaping (Error?) -> Swift.Void)? = nil)
func stopRecording(handler handler: (@escaping (RPPreviewViewController?, Error?) -> Swift.Void)? = nil)
func discardRecording(handler handler: @escaping () -> Swift.Void)
weak var delegate: RPScreenRecorderDelegate?
var isAvailable: Bool { get }
var isRecording: Bool { get }
var isMicrophoneEnabled: Bool
var isCameraEnabled: Bool
var cameraPreviewView: UIView? { get }
func awakeFromNib()
func prepareForInterfaceBuilder()
func accessibilityActivate() -> Bool
func accessibilityIncrement()
func accessibilityDecrement()
func accessibilityScroll(_ direction: UIAccessibilityScrollDirection) -> Bool
func accessibilityPerformEscape() -> Bool
func accessibilityPerformMagicTap() -> Bool
var accessibilityCustomActions: [UIAccessibilityCustomAction]?
func accessibilityElementDidBecomeFocused()
func accessibilityElementDidLoseFocus()
func accessibilityElementIsFocused() -> Bool
func accessibilityAssistiveTechnologyFocusedIdentifiers() -> Set<String>?
func accessibilityElementCount() -> Int
func accessibilityElement(at index: Int) -> Any?
func index(ofAccessibilityElement element: Any) -> Int
var accessibilityElements: [Any]?
var isAccessibilityElement: Bool
var accessibilityLabel: String?
var accessibilityHint: String?
var accessibilityValue: String?
var accessibilityTraits: UIAccessibilityTraits
var accessibilityFrame: CGRect
@NSCopying var accessibilityPath: UIBezierPath?
var accessibilityActivationPoint: CGPoint
var accessibilityLanguage: String?
var accessibilityElementsHidden: Bool
var accessibilityViewIsModal: Bool
var shouldGroupAccessibilityChildren: Bool
var accessibilityNavigationStyle: UIAccessibilityNavigationStyle
var accessibilityHeaderElements: [Any]?
var accessibilityCustomRotors: [UIAccessibilityCustomRotor]?
func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
func performSelector(onMainThread aSelector: Selector, with arg: Any?, waitUntilDone wait: Bool)
func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool, modes array: [String]?)
func perform(_ aSelector: Selector, on thr: Thread, with arg: Any?, waitUntilDone wait: Bool)
func performSelector(inBackground aSelector: Selector, with arg: Any?)
class func classForKeyedUnarchiver() -> AnyClass
var classForKeyedArchiver: AnyClass? { get }
func replacementObject(for archiver: NSKeyedArchiver) -> Any?
class func classFallbacksForKeyedArchiver() -> [String]
class func keyPathsForValuesAffectingValue(forKey key: String) -> Set<String>
class func automaticallyNotifiesObservers(forKey key: String) -> Bool
var observationInfo: UnsafeMutableRawPointer?
func willChangeValue(forKey key: String)
func didChangeValue(forKey key: String)
func willChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
func didChange(_ changeKind: NSKeyValueChange, valuesAt indexes: IndexSet, forKey key: String)
func willChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
func didChangeValue(forKey key: String, withSetMutation mutationKind: NSKeyValueSetMutationKind, using objects: Set<AnyHashable>)
func addObserver(_ observer: NSObject, forKeyPath keyPath: String, options options: NSKeyValueObservingOptions = [], context context: UnsafeMutableRawPointer?)
func removeObserver(_ observer: NSObject, forKeyPath keyPath: String, context context: UnsafeMutableRawPointer?)
func removeObserver(_ observer: NSObject, forKeyPath keyPath: String)
func observeValue(forKeyPath keyPath: String?, of object: Any?, change change: [NSKeyValueChangeKey : Any]?, context context: UnsafeMutableRawPointer?)
class var accessInstanceVariablesDirectly: Bool { get }
func value(forKey key: String) -> Any?
func setValue(_ value: Any?, forKey key: String)
func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKey inKey: String) throws
func mutableArrayValue(forKey key: String) -> NSMutableArray
func mutableOrderedSetValue(forKey key: String) -> NSMutableOrderedSet
func mutableSetValue(forKey key: String) -> NSMutableSet
func value(forKeyPath keyPath: String) -> Any?
func setValue(_ value: Any?, forKeyPath keyPath: String)
func validateValue(_ ioValue: AutoreleasingUnsafeMutablePointer<AnyObject?>, forKeyPath inKeyPath: String) throws
func mutableArrayValue(forKeyPath keyPath: String) -> NSMutableArray
func mutableOrderedSetValue(forKeyPath keyPath: String) -> NSMutableOrderedSet
func mutableSetValue(forKeyPath keyPath: String) -> NSMutableSet
func value(forUndefinedKey key: String) -> Any?
func setValue(_ value: Any?, forUndefinedKey key: String)
func setNilValueForKey(_ key: String)
func dictionaryWithValues(forKeys keys: [String]) -> [String : Any]
func setValuesForKeys(_ keyedValues: [String : Any])
func fileManager(_ fm: FileManager, shouldProceedAfterError errorInfo: [AnyHashable : Any]) -> Bool
func fileManager(_ fm: FileManager, willProcessPath path: String)
func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval, inModes modes: [RunLoopMode])
func perform(_ aSelector: Selector, with anArgument: Any?, afterDelay delay: TimeInterval)
class func cancelPreviousPerformRequests(withTarget aTarget: Any, selector aSelector: Selector, object anArgument: Any?)
class func cancelPreviousPerformRequests(withTarget aTarget: Any)
func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int, delegate delegate: Any?, didRecoverSelector didRecoverSelector: Selector?, contextInfo contextInfo: UnsafeMutableRawPointer?)
func attemptRecovery(fromError error: Error, optionIndex recoveryOptionIndex: Int) -> Bool
var autoContentAccessingProxy: Any { get }
class func version() -> Int
class func setVersion(_ aVersion: Int)
var classForCoder: AnyClass { get }
func awakeAfter(using aDecoder: NSCoder) -> Any?
func provideImageData(_ data: UnsafeMutableRawPointer, bytesPerRow rowbytes: Int, origin x: Int, _ y: Int, size width: Int, _ height: Int, userInfo info: Any?)
}
extension RPScreenRecorder : CVarArg {
}
extension RPScreenRecorder : Equatable, Hashable {
var hashValue: Int { get }
} | CVarArg, Equatable, Hashable |
| Declaration | |
|---|---|
| From | func discardRecordingWithHandler(_ handler: () -> Void) |
| To | func discardRecording(handler handler: @escaping () -> Swift.Void) |
Modified RPScreenRecorder.isAvailable
| Declaration | |
|---|---|
| From | var available: Bool { get } |
| To | var isAvailable: Bool { get } |
Modified RPScreenRecorder.isMicrophoneEnabled
| Declaration | Readonly | |
|---|---|---|
| From | var microphoneEnabled: Bool { get } | yes |
| To | var isMicrophoneEnabled: Bool | -- |
Modified RPScreenRecorder.isRecording
| Declaration | |
|---|---|
| From | var recording: Bool { get } |
| To | var isRecording: Bool { get } |
| Declaration | |
|---|---|
| From | class func sharedRecorder() -> RPScreenRecorder |
| To | class func shared() -> RPScreenRecorder |
Modified RPScreenRecorder.startRecording(withMicrophoneEnabled: Bool, handler: ( (Error?) -> Swift.Void)?)
| Declaration | Deprecation | |
|---|---|---|
| From | func startRecordingWithMicrophoneEnabled(_ microphoneEnabled: Bool, handler handler: ((NSError?) -> Void)?) | -- |
| To | func startRecording(withMicrophoneEnabled microphoneEnabled: Bool, handler handler: (@escaping (Error?) -> Swift.Void)? = nil) | iOS 10.0 |
Modified RPScreenRecorder.stopRecording(handler: ( (RPPreviewViewController?, Error?) -> Swift.Void)?)
| Declaration | |
|---|---|
| From | func stopRecordingWithHandler(_ handler: ((RPPreviewViewController?, NSError?) -> Void)?) |
| To | func stopRecording(handler handler: (@escaping (RPPreviewViewController?, Error?) -> Swift.Void)? = nil) |
Modified RPScreenRecorderDelegate
| Declaration | |
|---|---|
| From | protocol RPScreenRecorderDelegate : NSObjectProtocol {
optional func screenRecorder(_ screenRecorder: RPScreenRecorder, didStopRecordingWithError error: NSError, previewViewController previewViewController: RPPreviewViewController?)
optional func screenRecorderDidChangeAvailability(_ screenRecorder: RPScreenRecorder)
} |
| To | protocol RPScreenRecorderDelegate : NSObjectProtocol {
optional func screenRecorder(_ screenRecorder: RPScreenRecorder, didStopRecordingWithError error: Error, previewViewController previewViewController: RPPreviewViewController?)
optional func screenRecorderDidChangeAvailability(_ screenRecorder: RPScreenRecorder)
} |
| Declaration | |
|---|---|
| From | optional func screenRecorder(_ screenRecorder: RPScreenRecorder, didStopRecordingWithError error: NSError, previewViewController previewViewController: RPPreviewViewController?) |
| To | optional func screenRecorder(_ screenRecorder: RPScreenRecorder, didStopRecordingWithError error: Error, previewViewController previewViewController: RPPreviewViewController?) |