import Foundation import SystemExtensions print("=== System Extension API Installation Test ===") print("Date: \(Date())") print("") class ExtensionDelegate: NSObject, SystemExtensionRequestDelegate { func request(_ request: SystemExtensionRequest, didFailWithError error: Error) { print("❌ Installation failed: \(error.localizedDescription)") print("Error domain: \(error._domain)") print("Error code: \(error._code)") if let nsError = error as NSError? { print("User info: \(nsError.userInfo)") } exit(1) } func request(_ request: SystemExtensionRequest, didFinishWithResult result: SystemExtensionRequest.Result) { print("✅ Installation succeeded!") print("Result: \(result)") switch result { case .installed: print("Extension installed successfully") case .willInstallAfterReboot: print("Extension will be installed after reboot") case .replaced: print("Extension replaced") case .willReplaceAfterReboot: print("Extension will be replaced after reboot") @unknown default: print("Unknown result") } exit(0) } func requestNeedsUserApproval(_ request: SystemExtensionRequest) { print("⚠️ User approval needed") print("Please check System Preferences → Privacy & Security → System Extensions") print("Extension ID: \(request.identifier)") print("") } func request(_ request: SystemExtensionRequest, needsApprovalToShowMessage message: String) { print("Approval message: \(message)") } func request(_ request: SystemExtensionRequest, needsApprovalTo reboot: Bool) { print("Reboot needed: \(reboot)") } } print("Extension ID: com.accusys.markbase.fskitmodule") print("") let delegate = ExtensionDelegate() let request = SystemExtensionRequest( identifier: "com.accusys.markbase.fskitmodule", delegate: delegate ) print("Submitting installation request...") SystemExtensionManager.shared.submitRequest(request) print("Waiting for approval...") print("") RunLoop.main.run()