I am building a viewer application, which needs to accept "any" kind of file as the selected file to view. In fact it even should accept folders, because in that case I want to show information relevant about the folder such as number of files and such.
Now suppose I decided to use the NSDocument based application architecture to do this. How do I make my application accept any kind of file (and not get these [NSDocumentController reopenDocumentForURL:withContentsOfURL:display:completionHandler:] failed messages?
My NSDocument subclass needs to accept any kind of file
677 views Asked by robject At
1
There are 1 answers
Related Questions in MACOS
- Error installing Nativescript on Mac M2 Sonoma 14.4.1
- macOS - Most secure way of a GUI SUDO_ASKPASS
- When using onDrag in SwiftUI on Mac how can I detect when the dragged object has been released anywhere?
- Why does Hugo generate different taxonomy-related HTML on different OS's?
- ZSH function parameters conundrum
- how to make read only file/directory in Mac writable
- macOS BigSur - Unable to run bundled php version or brew php 8
- 9 Digit Addresses in Hexadecimal System in MacOS
- MacOS Bash-Script: while read p and echo
- How to make a range for tail rows on a categorized table in Numbers with JXA scripts?
- Cannot build a basic project with curl on Mac (M2) for Raspberry Pi Pico
- How to recover deleted files from create vite react project
- Can't run built SFML project from Xcode template
- React Native - RealmJS - Linker command failed with exit code 1
- How can I manually add a keyboard shortcut to a Shortcut Action Service directly via the system files, without going through the System Prefs GUI?
Related Questions in NSDOCUMENT
- Autosaving NSDocument memory leak with NSWindow and NSToolbar - NSDocumentTitlebarPopoverViewController leaks
- macOS document based app - save all documents as one
- Implementing NSDocument in a right way
- Make "Close All" (cmd+option+W) apply only to one type of document windows
- iCloud Drive: NSDocument.revert(toContentsOf:ofType:) called when document is merely opened on another device
- NSDocument XML read Issue
- displayName won't set despite allowing set
- How to find out if print panel was closed successfully when printing from a PDFView
- `NSDocument`'s `data(ofType:)` getting data from (async) `actor`
- Is NSDocument subclass a model object or not?
- NSDocument-Based Application: Selecting Default File Type in NSSavePanel
- Changing NSDocument tab names. (Swift)
- NSDocument file wrapper sync via iCloud doesn't appear to support editing on multiple computers simultaneously
- Get NSDocument from NSObject
- Document based app using one single window
Related Questions in UTI
- Register MPEG-4 as Dragged Type using pyobjc on macos
- iOS App File Sharing- ‘Open in App’ option is not available for file sharing for iOS 16 and Above when Shared extension is added as a target in Xcode
- How can I create an image to be shown for a custom exported document type for an iOS App?
- Any way make Messages on iOS open a share sheet for non "public.text" conformant UTI type if contents are text?
- What (else) do I need to do to open my iOS app by tapping attachment?
- How can I upgrade the deprecated UTTypeCopyPreferredTagWithClass method to something iOS 16 compatible?
- UIDocumentBrowserViewController and suported file types
- What is an iOS 16-compatible way of turning a list of uniform type indicator strings (e.g., ["public.text", "public.image"]) into a list of UTType?
- Handling Importing Universal Type Identifiers
- SwiftUI DropDestination Using Custom Transferable Type and Using UTI / UTType Not Working
- How can I make custom icons appear for document types associated with my macOS app in the Finder?
- Custom file type is not showing "Open With"
- AirDrop - Custom file app not installed (for receiver)
- How do you create a UTType for System Declared Uniform Type Identifiers for folder?
- Importing '.db' files using UIDocumentPickerViewController
Popular Questions
- How do I undo the most recent local commits in Git?
- How can I remove a specific item from an array in JavaScript?
- How do I delete a Git branch locally and remotely?
- Find all files containing a specific text (string) on Linux?
- How do I revert a Git repository to a previous commit?
- How do I create an HTML button that acts like a link?
- How do I check out a remote Git branch?
- How do I force "git pull" to overwrite local files?
- How do I list all files of a directory?
- How to check whether a string contains a substring in JavaScript?
- How do I redirect to another webpage?
- How can I iterate over rows in a Pandas DataFrame?
- How do I convert a String to an int in Java?
- Does Python have a string 'contains' substring method?
- How do I check if a string contains a specific word?
Trending Questions
- UIImageView Frame Doesn't Reflect Constraints
- Is it possible to use adb commands to click on a view by finding its ID?
- How to create a new web character symbol recognizable by html/javascript?
- Why isn't my CSS3 animation smooth in Google Chrome (but very smooth on other browsers)?
- Heap Gives Page Fault
- Connect ffmpeg to Visual Studio 2008
- Both Object- and ValueAnimator jumps when Duration is set above API LvL 24
- How to avoid default initialization of objects in std::vector?
- second argument of the command line arguments in a format other than char** argv or char* argv[]
- How to improve efficiency of algorithm which generates next lexicographic permutation?
- Navigating to the another actvity app getting crash in android
- How to read the particular message format in android and store in sqlite database?
- Resetting inventory status after order is cancelled
- Efficiently compute powers of X in SSE/AVX
- Insert into an external database using ajax and php : POST 500 (Internal Server Error)
Based on the discussion: iOS Document/File type associations - wildcard UTI? I managed to get it working (it seems):
Nameproperty topublic.item.Now the application will be able to open any kind of file as its document. One thing to remember is to keep the following (automatically generated during project creation) methods in place. I deleted them, assuming I did not need them, and that created another error:
- (NSData *)dataOfType:(NSString *)typeName error:(NSError **)outError- (BOOL)readFromData:(NSData *)data ofType:(NSString *)typeName error:(NSError **)outErrorand to be able to have folders as your document, add:
- (BOOL)readFromFileWrapper:(NSFileWrapper *)fileWrapper ofType:(NSString *)typeName error:(NSError **)outErrorIt seems to work for now, any additional remarks are welcome.