2

我收到了一个非常有趣的项目。我必须完成的任务是想办法让合作伙伴在不放弃源代码的情况下参与应用程序。代码将包含在应用程序的主包中,因此不会动态存储。合作伙伴有一个功能齐全的应用程序,需要在适当的时间在主应用程序的窗口中运行。我知道让合作伙伴创建一个网络应用程序是理想的,因此它被视为网页,但我更关心必须在 iOS 中本地编写的代码。

我的问题是解决这个问题的最佳方法是什么?理论上它就像一个应用程序中的一个应用程序。如果他们放弃了他们的 .app 文件,有没有办法我可以将它包含在包中,然后在我捕捉到某个事件时运行它?我应该让合作伙伴在框架中创建他们的代码,然后导入到 shell 项目中吗?解决这个问题的最佳方法是什么?

4

3 回答 3

2

如果您的第二方不想为您提供源代码,他为什么不将其编译为目标代码,然后让您简单地将其链接到您的应用程序?

顺便说一句,至少在官方(非越狱)iDevices 上,应用程序不能以这种方式相互“嵌入”或“打开”——如果 1. 它是一个单独的应用程序 2. 它有,您可以以编程方式打开一个应用程序与其捆绑包关联的已注册特殊 URL。

于 2012-08-13T20:16:56.300 回答
1

如果他们放弃了他们的 .app 文件,有没有办法我可以将它包含在包中,然后在我捕捉到某个事件时运行它?

不,您需要让他们创建一个库。然后,您可以将该库包含在您的项目中。

创建库很简单:

  1. 在 Xcode 中选择 File->New...->Project...。

  2. 选择“Cocoa Touch 静态库”项目模板。

  3. 添加您的代码。

  4. 建造。

结果是一个静态库,您可以将其添加到您的应用程序中。该库将包含您添加的已编译代码,但不包含源代码。库开发人员应提供使用库中代码所需的任何头文件。

于 2012-08-13T21:03:29.847 回答
0

应用程序中的应用程序是可能的,但它需要一个通用数据框架,允许一个应用程序引用相同的数据,而不会混淆数据的来源和目的地。这样的框架允许一个应用程序与另一个引用相同数据的应用程序进行交互。

于 2017-02-19T01:16:37.623 回答