0

I've got a OS X app that saves to a bundle. It works fine until I log out and then back in as a guest user and then it just shows up as a folder. The structure of the folder looks fine and has the correct extension, it's just not showing up as the custom UTI document.

I have changed the plist to say that the document is a bundle and changed it in the document types part of the target. Again, it is only not working when logging in as Guest User and so has been rejected from the App Store. Any ideas?

Here's the relevant section of "QTReview-Info.plist:

<key>CFBundleDocumentTypes</key>
<array>
    <dict>
        <key>CFBundleTypeExtensions</key>
        <array>
            <string>movr</string>
        </array>
        <key>CFBundleTypeIconFile</key>
        <string>QTReviewIconRed</string>
        <key>CFBundleTypeMIMETypes</key>
        <array/>
        <key>CFBundleTypeName</key>
        <string>QTReview</string>
        <key>CFBundleTypeRole</key>
        <string>Editor</string>
        <key>LSItemContentTypes</key>
        <array>
            <string>com.protogylabs.qtreview</string>
        </array>
        <key>LSTypeIsPackage</key>
        <integer>1</integer>
        <key>NSDocumentClass</key>
        <string>MyDocument</string>
        <key>NSPersistentStoreTypeKey</key>
        <string>Binary</string>
    </dict>

The structure of the bundle is:

bundleFilename.movr (folder)
--Quicktime movie
--documentDictData 
--annotationFiles (folder)
----image01.jpg
----image02.jpg

Here's a screenshot of the UTI registration

  • 1
    Can you update your post with bundle structure... bundle extension? How did you register it... plists is also beneficial – Marek H Sep 03 '15 at 18:48
  • Is your app installed in /Applications or just working from your user account? Try moving it to the /Applications folder and launching it at least once. Then log in as guest and see if it works. – Joshua Nozzi Sep 03 '15 at 19:33
  • I've added a little bit more information above. – Eric Badros Sep 03 '15 at 20:37
  • The app is installed in /Applications/ rather than the users Applications folder. I tried launching the app, then logging out, and back in again with the Guest User. No dice. I confirmed that a bundle created with my normal user account that appears correctly in my normal user account, appears as a folder in the guest user account. – Eric Badros Sep 03 '15 at 20:39
  • 1
    Okay, so I figured this out. I had to delete the LSItemContentTypes in the CFBundleDocumentTypes section. Then the package was recognized as a bundle, but it caused a few other issues. I ended up putting it back in flushing out the UTI database and it started working. Here's a reference to the first part: http://stackoverflow.com/questions/10260299/icloud-nsfilewrapper-showing-as-2-different-files-in-settings – Eric Badros Sep 08 '15 at 23:40
  • 1
    Here's the terminal command to flush out the UTI database: And here's how to flush out the UTI database: /System/Library/Frameworks/CoreServices.framework/Versions/A/Frameworks/LaunchServices.framework/Versions/A/Support/lsregister -kill -r -domain local -domain system -domain user – Eric Badros Sep 08 '15 at 23:41

0 Answers0