import Foundation import SystemExtensions class MarkBaseFSSystemExtension: NSObject, SystemExtensionRequestDelegate { static let extensionIdentifier = "com.accusys.markbase.systemextension" func requestSystemExtension() { let request = SystemExtensionRequest( identifier: Self.extensionIdentifier, delegate: self ) SystemExtensionManager.shared.submitRequest(request) print("System Extension request submitted: \(Self.extensionIdentifier)") } // SystemExtensionRequestDelegate methods func request(_ request: SystemExtensionRequest, didFailWithError error: Error) { print("System Extension request failed: \(error.localizedDescription)") } func request(_ request: SystemExtensionRequest, didFinishWithResult result: SystemExtensionRequest.Result) { print("System Extension request succeeded: \(result)") } func requestNeedsUserApproval(_ request: SystemExtensionRequest) { print("System Extension needs user approval") } func request(_ request: SystemExtensionRequest, needsApprovalToShowMessage message: String) { print("System Extension approval message: \(message)") } func request(_ request: SystemExtensionRequest, needsApprovalTo reboot: Bool) { print("System Extension needs reboot: \(reboot)") } }