iphone - 如何使用 CFBundleTypeName 添加 mp3 支持

标签 iphone ios associations

PDF Reader Lite 等应用中,可以通过这种方式将 PDF 类型与应用程序关联起来,当在 Safari 或电子邮件等应用程序中打开 PDF 文件时,它也会显示在 PDF Reader Lite 应用程序中打开文件的选项。

是否可以为 mp3 实现类似的功能?我尝试通过以下方式在 Info.plist 文件中添加以下标签。

<array>
     <dict>
          <key>CFBundleTypeName</key>
          <string>MPG3</string>
          <key>LSHandlerRank</key>
          <string>Alternate</string>
          <key>LSItemContentTypes</key>
          <array>
               <string>public.mp3</string>
          </array>
     </dict>
</array>

但是当我打开 mp3 URL(末尾带有扩展名 .mp3 的 URL - http://sound18.mp3pk.com/indian/7khoonmaaf/7khoonmaaf01(www.songs.pk).mp3 时,它不会显示在我的应用程序中打开文件的选项。

有人可以帮我解决这个问题吗?

谢谢

最佳答案

如果将此字典设置为 CFBundleDocumentTypes 键,它实际上会起作用。

您可以通过将包含 mp3 文件的邮件发送到您的 iPhone 或 iPad 来测试它是否有效。按住附件,UIDocumentInteractionController-View 将弹出。其他应用程序也可以使用 UIDocumentInteractionController (see SDK documentation) 来允许使用其他应用程序打开文件。

但是,Mobile Safari 并不对所有媒体类型都这样做。所以直接打开URL是不行的。

另一种方法是为您的应用注册一个 URL 方案 (CFBundleURLTypes),然后您可以通过该自定义 URL 方案 (myapp://www.example.com/file.mp3)。

关于iphone - 如何使用 CFBundleTypeName 添加 mp3 支持,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/4812630/

相关文章:

iphone - 使用条件 Storyboard进行转场

iphone - 如何在 iPhone 上默认显示数字键盘?

ios - for - in 循环,swift 的结果总和

ruby-on-rails-3.1 - Active_admin 和 :filter

iphone - 无法为单例中的 BOOL 字段赋值

iphone - 在 iPhone 上设置设备音量

ios - UILocalNotification 最大差异

ios - 在编辑模式下按删除按钮时 UITableView 崩溃

ruby-on-rails - 带嵌套属性的 Fields_for,通过关联的 has_many

c# - 为什么在类型 '' 上声明的导航属性 '' 已配置有冲突的多重性。错误出现?