0

I've created a new file type unique to my App. A user can now save, for the purpose of sharing, backup etc., files of this type to the App's own folder on iCloud Drive. This feature is now live on the app store and works with one, odd, exception.

If I tap on my new file type, anywhere in iCloud Drive except the App's own folder, my App appears as an option in "Copy to ..." I'd prefer if it just opened it which might be part of the problem.

If I tap on a file in it's own folder the App is not listed in "Copy to ...".

If I add the file to a website it can open it fine from there too.

It can create new files in it's own folder no problem.

What am I missing?

<key>CFBundleDocumentTypes</key>
 <array>
  <dict>
   <key>CFBundleTypeIconFiles</key>
   <array>
    <string>CSL-icon-64x64.png</string>
    <string>CSL-icon-44x58.png</string>
    <string>CSL-icon-22x29.png</string>
    <string>CSL-icon-320x320.png</string>
   </array>
   <key>CFBundleTypeName</key>
   <string>CSL File Type</string>
   <key>CFBundleTypeRole</key>
   <string>Editor</string>
   <key>LSHandlerRank</key>
   <string>Owner</string>
   <key>LSItemContentTypes</key>
   <array>
    <string>com.mydomain.csl</string>
   </array>
  </dict>
 </array>

<key>UTExportedTypeDeclarations</key>
 <array>
  <dict>
   <key>UTTypeConformsTo</key>
   <array>
    <string>public.data</string>
   </array>
   <key>UTTypeDescription</key>
   <string>CSL File Type</string>
   <key>UTTypeIdentifier</key>
   <string>com.mydomain.csl</string>
   <key>UTTypeSize320IconFile</key>
   <string>CSL-icon-320x320</string>
   <key>UTTypeSize64IconFile</key>
   <string>CSL-icon-64x64</string>
   <key>UTTypeTagSpecification</key>
   <dict>
    <key>public.filename-extension</key>
    <array>
     <string>csl</string>
    </array>
    <key>public.mime-type</key>
    <string>application/something</string>
   </dict>
  </dict>
 </array>

<key>UTImportedTypeDeclarations</key>
 <array>
  <dict>
   <key>UTTypeConformsTo</key>
   <array>
    <string>public.data</string>
   </array>
   <key>UTTypeDescription</key>
   <string>CSL File Type</string>
   <key>UTTypeIdentifier</key>
   <string>com.mydomain.csl</string>
   <key>UTTypeSize320IconFile</key>
   <string>CSL-icon-320x320</string>
   <key>UTTypeSize64IconFile</key>
   <string>CSL-icon-64x64</string>
   <key>UTTypeTagSpecification</key>
   <dict>
    <key>public.filename-extension</key>
    <array>
     <string>csl</string>
    </array>
    <key>public.mime-type</key>
    <string>application/something</string>
   </dict>
  </dict>
 </array>

<key>NSUbiquitousContainers</key>
 <dict>
  <key>iCloud.com.mydomain.myapp</key>
  <dict>
   <key>NSUbiquitousContainerIsDocumentScopePublic</key>
   <true/>
   <key>NSUbiquitousContainerName</key>
   <string>SomeDirName</string>
   <key>NSUbiquitousContainerSupportedFolderLevels</key>
   <string>Any</string>
  </dict>
 </dict>

This is an anonymised version of the meta taken from my App's info.plist file, not an exact copy.

Seoras
  • 1,286
  • 13
  • 21
  • Please update question with dictionary of new filetype (CFBundleDocumentTypes, UTExportedTypeDeclarations...) and rephrase. It is really hard to read and get a clue what is the question (images might help). – Marek H Nov 20 '17 at 15:31
  • Done. I don't see how I can word it any better or give more information than I have already. – Seoras Nov 21 '17 at 19:49
  • Try pixelmator or other competition info.plist to see differences in your info.plist; might help. Check if competition apps work and your doesn't. – Marek H Nov 26 '17 at 11:53

0 Answers0