Signposting the major actions a public method takes.Noting each public method has been called, and the arguments with which it was called.
You can view messages at the Info or Debug level to view more details of how UnzipKit is working, and use Activity Tracing to help pinpoint the code path that's causing a particular error.Īs a fallback, regular NSLog is used on older OSes, with all messages logged at the same level. Loggingįor all OS versions from 2016 onward (macOS 10.12, iOS 10, tvOS 10, watchOS 3), UnzipKit uses the new Unified Logging framework for logging and Activity Tracing. Documentationįull documentation for the project is available on CocoaDocs. To open in Xcode, use the UnrarKit.xcworkspace file, which includes the other projects. It will cause the operation to fail, returning nil or NO (depending on the return type, and give an error with error code URKErrorCodeUserCancelled.
Using either method above, you can call to stop the operation in progress. [extractFilesProgress addObserver: self forKeyPath:observedSelectorīOOL success = [archive extractFilesTo:extractURL.path NSString *observedSelector = NSStringFromSelector( localizedDescription)) Static void *ExtractFilesContext = &ExtractFilesContext If you don't have a hierarchy of NSProgress instances, or if you want to observe more details during progress updates in extractFilesTo:overwrite:error:, you can create your own instance of NSProgress and set the URKArchive instance's progress property, like so:
Using your own explicit NSProgress instance [extractDataProgress addObserver: self forKeyPath:observedSelector NSString *observedSelector = NSStringFromSelector( fractionCompleted)) URKArchive *archive = initWithURL:aFileURL error: nil] Static void *ExtractDataContext = &ExtractDataContext