2010-11-15 20 views
15

Şu anda kullanıcının kendi dosyalarını yedeklemesine izin vermek istediğim bir uygulama oluşturuyorum (plist + m4a). Dosyaları sıkıştırıp uzantıyı özel olarak değiştirdim (özellikle benim uygulamam için "* .MyBackup" deyin). Kullanıcı daha sonra e-postayla veya iTunes dosya paylaşımıyla dışa aktarılabilir.iOS'ta özel bir dosya türünü nasıl kaydederim

CFBundleDocumentTypes hakkında zaten okudum, ancak onlarla ne yapmak zorunda olduğumu anlamadım.

Şu anda takılı kaldığım bölüm, uzantıyı uygulamamla nasıl ilişkilendireceğimiz. Eğer kullanıcı kendisine "custom" -zip dosyası içeren bir e-posta gönderirse, o da uygulamayı kullanarak açabiliyordu.

Bunu nasıl yaparım ve "UTExportedTypeDeclarations" nedir?

+0

olası yinelenen: // stackoverflow .com/questions/2774343/nasıl yapılır-i-ilişkilendir-dosya-türleri-ile-bir-iphone-uygulama) –

cevap

28

Umarım daha fazla açıklama yapmadan projelerim info.plist'inin bir bölümüne dökülürsem sorun olmaz. Bence bu oldukça açıklayıcı.

<key>CFBundleDocumentTypes</key> 
<array> 
    <dict> 
     <key>CFBundleTypeIconFiles</key> 
     <array> 
      <string>Icon-iPad-doc320.png</string> 
      <string>Icon-iPad-doc.png</string> 
     </array> 
     <key>CFBundleTypeName</key> 
     <string>MyAppName File</string> 
     <key>CFBundleTypeRole</key> 
     <string>Viewer</string> 
     <key>LSHandlerRank</key> 
     <string>Owner</string> 
     <key>LSItemContentTypes</key> 
     <array> 
      <!-- my app supports files with my custom extension (see UTExportedTypeDeclarations) --> 
      <string>com.myurl.myapp.myextension</string> 
      <!-- and csv files. --> 
      <string>public.comma-separated-values-text</string> 
     </array> 
    </dict> 
</array> 



<key>UTExportedTypeDeclarations</key> 
<array> 
    <dict> 
     <key>UTTypeConformsTo</key> 
     <array> 
      <string>public.data</string> 
     </array> 
     <key>UTTypeDescription</key> 
     <string>MyAppName File</string> 
     <key>UTTypeIdentifier</key> 
     <string>com.myurl.myapp.myextension</string> 
     <key>UTTypeTagSpecification</key> 
     <dict> 
      <key>public.filename-extension</key> 
      <string>myextension</string> 
      <key>public.mime-type</key> 
      <string>application/octet-stream</string> 
     </dict> 
    </dict> 
</array> 
+0

Başar, işe yarıyor! Hızlı yanıt için teşekkürler ... – JNK

+0

Yanıtın yanındaki onay işaretini mutlaka kontrol edin. –

+0

ahhh ... tamam: D stil tam bir n00b: D – JNK

2

Kontrol dışarı /var/mobile/Library/Preferences/com.apple.LaunchServices.plist

[Nasıl bir iPhone uygulaması ile dosya türlerini ilişkilendirilir?] Arasında (http
İlgili konular