【问题标题】:Is there Android Intent concept in iPhone SDKiPhone SDK中是否有Android Intent概念
【发布时间】:2011-04-12 05:42:30
【问题描述】:

只是从 Android 切换到 iPhone。在 Android 中,我可以制作多个应用程序并使用 tabView 将每个应用程序调用为意图。

在 iPhone 中,我可以制作多个应用程序。我需要一个标签来调用每个应用程序或应用程序视图。 iPhone中是否有与意图类似的概念?刚刚切换到 iPhone,将所有其他项目复制到选项卡中不起作用。如果您有其他方法可以解决,我真的很感激。谢谢,

【问题讨论】:

    标签: android ios iphone


    【解决方案1】:

    Android 和 iOS 在这方面有很大不同。 Android 非常开放地允许您使用意图来混合和匹配来自其他应用程序的活动。 iOS 不是这样的。每个应用程序都在自己的私人空间中运行,通常甚至看不到其他应用程序的数据,更不用说使用他们的服务了。 可能会导致其他应用程序通过自定义 URL 运行,但这不是一回事。

    您需要将各种 iOS 应用的视图控制器、视图等的代码复制或移动到您的标签栏应用项目中。您将把它们全部构建到一个应用程序中,标签栏将在视图控制器之间切换。

    【讨论】:

      【解决方案2】:

      在 iOS 8 中,您将拥有类似于 Android Intents 的东西。使用App Extensions 可以达到类似的行为。

      在不久的将来,应用将开始公开它们的“扩展”(就像您在 Android 框架中在清单中声明 Intent 过滤器一样),供需要的应用使用。第一个版本中允许的扩展区域是:

      • 今天
      • 分享
      • 动作
      • 照片编辑
      • 文档提供者
      • 自定义键盘

      苹果终于发布这个功能真是太好了!

      【讨论】:

        【解决方案3】:

        Android 中的 Intent 涵盖了很多功能。没有与之等效的 iOS。

        但如果您的目标是启动不同的应用程序并向其传递参数,您可以尝试 URL Schema。

        假设您有应用 AAA 的 URL 架构 aaa:// 和应用 BBB 的 URL bbb:// 您可以启动应用程序 AAA,例如调用 bbb://v=1&c=2 来启动 BBB 并获取参数。您甚至可以通过这些参数来控制要显示的视图,这样您就可以在 Android 中拥有类似的概念,使用 Intent 调用不同的 Activity。

        您必须在 Info.plist 中注册 URL 架构

        【讨论】:

          【解决方案4】:

          与 iOS 上的 Intent 最接近的概念是系统应用程序对某些 URL 的处理。见here。可以在某一时刻注册您自己的应用程序 URL 方案(参见 this 文章),但我必须承认我在最近的 SDKs 中没有尝试过这个(IIRC Glympse 链接可以在Glympse 应用程序,所以这种技术可能仍然有效)。

          【讨论】:

            【解决方案5】:

            截至 2016 年,Apple 添加了一个类似于 Android 的 Intents 框架,但限制性更强。预计苹果未来会增加更多的 Intent,但目前还很有限。 https://developer.apple.com/reference/intents

            【讨论】:

            • iOS 意图框架似乎以 Siri 为中心,即接受来自 Siri 和地图的调用。是否支持普通应用分享功能?
            • @Thomas 目前还没有,但它显然被设计为将来以这种方式扩展
            • Apple 的 Intents 框架与 Android 的 Intents 甚至不接近也不相似
            【解决方案6】:

            从 iOS 8 开始,您可以使用App Extensions

            【讨论】:

              猜你喜欢
              • 1970-01-01
              • 2014-06-06
              • 1970-01-01
              • 1970-01-01
              • 2012-07-26
              • 1970-01-01
              • 2021-01-03
              • 1970-01-01
              • 1970-01-01
              相关资源
              最近更新 更多