2016-12-21 7 views
1

Je souhaite ajouter la possibilité d'ouvrir certains types d'audio spécifiques dans mon application: .caf, .aiff, .wav et .mp3. J'ai ajouté 'Types de document' article à info.plist selon le official guide. Voici une capture d'écran: enter image description here Et le code source du info.plist:CFBundleDocumentTypes ne fonctionnant pas avec l'UTI non publique dans l'application iOS

<key>CFBundleDocumentTypes</key> 
<array> 
    <dict> 
     <key>CFBundleTypeName</key> 
     <string>Audio</string> 
     <key>CFBundleTypeIconFiles</key> 
     <array/> 
     <key>LSHandlerRank</key> 
     <string>Alternate</string> 
     <key>CFBundleTypeRole</key> 
     <string>Viewer</string> 
     <key>LSItemContentTypes</key> 
     <array> 
      <string>public.mp3</string> 
      <string>public.aiff-audio</string> 
      <string>public.aifc-audio</string> 
      <string>com.apple.coreaudio-​format</string> 
      <string>com.microsoft.waveform-​audio</string> 
     </array> 
    </dict> 
</array> 

Le problème en question

Le problème est que l'application est manquante dans le « Open in .. . "boîte de dialogue pour .caf et .wav fichiers. Je suppose que les UTIs pour ces fichiers n'ont pas de public. perfix.

Répondre

0

une extension manquante aucun problème avec cela.

<key>CFBundleDocumentTypes</key> 
<array> 
<dict> 
    <key>CFBundleTypeName</key> 
    <string>Audio</string> 
    <key>CFBundleTypeIconFiles</key> 
    <key>LSHandlerRank</key> 
    <string>Alternate</string> 
    <key>CFBundleTypeRole</key> 
    <string>Viewer</string> 
    <key>LSItemContentTypes</key> 
    <array> 
     <string>public.aiff-audio</string> 
     <string>public.aifc-audio</string> 
     <string>com.apple.coreaudio-​format</string> 
     <string>com.microsoft.waveform-​audio</string> 
     <string>public.audio</string> 
     <string>public.mp3</string> 
     <string>public.mpeg-4-audio</string> 
     <string>com.apple.protected-​mpeg-4-audio</string> 
     <string>public.aifc-audio</string> 
     <string>com.apple.coreaudio-​format</string> 
     <string>public.aiff-audio</string> 
    </array> 
</dict> 
<dict> 
     <key>CFBundleTypeName</key> 
     <string>Waveform audio</string> 
     <key>LSHandlerRank</key> 
     <string>Alternate</string> 
     <key>LSItemContentTypes</key> 
     <array> 
      <string>com.microsoft.waveform-​audio</string> 
     </array> 
    </dict> 
</array> 
+0

J'ai déjà ces deux identifiants dans le tableau. – kelin

+0

Je sais que public.audio fonctionnera pour tous les types audio, mais je n'ai besoin que de formats spécifiques. – kelin

+0

d'abord essayer d'obtenir l'accès de .caf et .wav qui est le problème principal. puis supprimez public.audio et vérifiez ici le code ré-édité. – vaibby