ios - 自定义 URL 方案参数

标签 ios objective-c cocoa-touch core-foundation url-scheme

在为我的应用定义自定义 URL 方案时,我需要 3 个键的相关信息:

  1. CFBundleTypeRole a.k.a 文档角色
  2. CFBundleURLName又名 URL 标识符
  3. CFBundleURLSchemes又名 URL 方案

我可以看到,如果我只定义 CFBundleURLSchemes成为myapp该应用程序启动正常,URL 为 myapp:// . 问题是:

  1. URL 标识符是否只是为了让我的方案独一无二?如何 它这样做吗?如果我有相同的方案 myapp在 2 个应用程序中定义,我调用 myapp:// 我可以通过调用 myapp://<URL Identifier> 来指定我想调用哪一个吗? ? 编辑:这个 URL 标识符实际上做了什么?它只给url一个名字吗?它是如何使用的?
  2. 角色定义权限级别 None, Viewer or Editor,我不确定我的许可级别 应用程序在启动的应用程序上有,因为我没有定义任何东西。我会 想知道什么是默认权限 CFBundleTypeRole未定义。

最佳答案

到 1:

不保证协议(protocol)是唯一的。没有您可以定义将打开 app1 或 app2 的参数。如果两个应用程序使用相同的方案,则不确定会发生什么

到2:

该角色在大多数情况下是无关紧要的,但必须:

  • editor = launched 因为他们可以读/写相同标识的文件
  • viewer = 只能阅读和显示

关于ios - 自定义 URL 方案参数,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25306007/

相关文章:

ios - 使用 ScrollView 的 UILabel 后 View 底部出现不需要的空间

ios - presentViewController会不会导致内存耗尽?

iOS : How to save selected row of tableview even I refresh tableview?

ios - uipageviewcontroller 类在设置多个 View Controller 时崩溃

ios - 复制 UITableViewCell

ios - iOS无法将数据插入到MySQL数据库中

ios - 使用没有选择器部分(名称)的方法签名是否正确

iphone - 在 UIViewController loadView 中使用什么尺寸?

ios - 如何创建一个类别来扩展 CGPaths?

ios - 在 MapView (Swift) 中单击 MKPlacemark 时如何调用函数?