我在整合iPhone应用时遇到了问题。在我以前的一篇文章中,我询问了creating a static library from an Xcode project ..
作为替代方案,我正在寻找一种方法将应用程序放在另一个应用程序中。因为两者都是包含大量类,图像,声音文件等的大型应用程序。两个应用程序的大多数类名和资源名都是相同的。所以静态库概念会导致名称冲突,这对我来说非常繁琐。所以我试图切换到这个app-inside-app概念。
考虑我有一个应用程序。我想把我的第二个应用程序放在应用程序中,方法是将我的第二个应用程序的“.app”文件放在我的第一个应用程序的“.ipa”文件中或第一个应用程序内的某个位置。现在我想从我的第一个应用程序调用我的第二个应用程序独立于第一个应用程序运行。
我的概念是,我的第一个和第二个应用程序都是单独的应用程序。我想把它们放在一个ipa文件中。安装ipa文件时只显示一个应用程序(即我的第一个应用程序)。我的第二个应用程序也已安装但未显示,因为它在我的第一个应用程序中。所以我只能从我的第一个应用程序调用我的第二个应用程序。
这就是我需要做的事情..
任何建议..
谢谢..
答案 0 :(得分:2)
你不能这样做。将应用程序放在iphone上的方法对于它的工作原理是相当严格的。并且您不能在应用商店的单个捆绑中放置2个应用。您必须发送2个应用程序,指示用户安装这两个应用程序,然后一个应用程序可以通过已注册的URL协议启动另一个应用程序。对于这种情况,这听起来很蹩脚。
正如您所发现的,ObjC缺乏适当的命名空间使得合并此代码变得困难。也许您可以简单地为所有库类添加前缀。一个简单的查找和替换应该能够做到这一点。这是C语言中不支持实际命名空间的伪命名空间代码的一般方法。
而不是Person
和Person
,您的主应用代码中会有Person
,而您的lib中会MLPerson
ML
很酷2您图书馆的字母前缀(我将MyLib
缩写为ML
)。