【问题标题】:What is the difference between Apple's iMessage template or adding an extension to an existing app?Apple 的 iMessage 模板或向现有应用添加扩展有什么区别?
【发布时间】:2016-11-23 21:27:19
【问题描述】:

我注意到在为 iOS 10 创建消息应用程序方面有所不同。

如果您在新项目的模板上使用iMessage Application 选项创建一个新项目,Xcode 将创建两个目标,一个应用程序和一个扩展程序。

但项目无法运行。

(从第二张图片可以看出,底部的目标选择器只有一个选择,并且该目标是扩展名)。

当您创建一个普通应用程序(例如单视图应用程序)然后添加一个目标,该目标是 iMessage 类型的应用程序扩展时,您将有两个目标,即应用程序和扩展程序。

我的问题是:

Xcode iMessage 的模板实际上只是创建一个扩展,对吧?不是应用程序加扩展程序,对吗?

如果这是真的,为什么 Xcode 会创建应用程序目标?如果它实际上不是一个应用程序并且永远不会运行,那么让一个应用程序目标编译并出现在带有扩展名 .app 的产品部分的目的是什么?

或者实际上扩展程序就像运行应用程序上的代码的“遥控器”?这很令人困惑,因为我错误地将大量内容拖到项目中并标记了两个目标以使其具有最终大小,因为资产已复制到两个目标。

最后一个问题是:什么将提交给 Apple,只是扩展程序还是两者都提交?

【问题讨论】:

  • 就我现在所见,情况已不再如此。使用 iMessage 模板创建应用程序只会带来一个扩展目标,没有主要目标或应用程序

标签: iphone ios-app-extension ios10 imessage


【解决方案1】:

澄清一下 - 使用模板创建的 iMessage 扩展程序不会出现在主屏幕上。它们仅出现在消息应用程序中。如果您使用 Xcode 中的“添加目标”菜单将 iMessage 扩展程序添加到现有应用程序,则您将扩展程序嵌入到主屏幕上显示的主机应用程序中。

据我所知,“应用目标”的工作实际上就是坐在那里拿着你的产品名称。在 Beta 1 中,我相信目标甚至没有构建设置。到目前为止,它有构建设置但没有构建阶段,我猜它会保持这种状态。

然而,它确实会在构建后出现在 Products 文件夹中,这让我认为它会以某种方式通过扩展提交到应用商店。无论如何,如果您确保文件的“目标成员资格”仅设置为扩展名,则应避免任何不必要的大小增加。

【讨论】:

  • 谢谢,这或多或少是我的想象。谢谢!
【解决方案2】:

我的猜测是让整个事情保持一致。我的意思是当你做一个其他扩展(键盘、小部件等)时,这必须与一个应用程序一起提供。这里的情况有点复杂,我们可以做一个 iMessage 应用程序,它可以自己运行,或者作为现有应用程序的扩展......所以当他们开发 SDK 时,他们必须保持两种方式,但这只是一个猜测:) 此外,我很确定,在将 iMessage 应用程序提交到商店时,主要目标将随之而来,就像所有其他实际扩展一样。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2012-08-11
    • 2016-12-14
    • 1970-01-01
    • 1970-01-01
    • 2018-03-06
    • 1970-01-01
    • 2018-03-14
    • 1970-01-01
    相关资源
    最近更新 更多