我构建了一个iOS项目(实际上是工作空间,因为Pods),它具有100%的功能,具有逻辑和UI(Storyboard和xibs)。现在我想重新使用这个应用程序/项目作为"核心"为将来的应用程序
我一直在搜索它,有几个解决方案,如静态库,框架和目标。但我不确定在我的情况下哪一个是最好的。我想重用所有的UI部分。
我看到大多数人都认为重用代码的最佳方法是静态库,即使它看起来不那么直接。但我认为重用UI可能Targets是最好的解决方案。我看到的问题是,如果基于我的核心项目构建10个应用程序,新项目将是巨大的,所以可能它不是最好的选择。
我不知道你们是否有更好的想法或意见。
提前致谢!!
答案 0 :(得分:3)
你可以做几件事,我会尝试通过它们。
如果您对“基础”应用程序进行了少量更改,那么最好的方法是使用目标(构建方案)。通过这种方式,您可以添加构建阶段的内容,从而添加所需的文件。这可能是你想要的最快捷的方式,但这里有一些缺点:如果你有5个应用程序,并且每个应用程序都有QA和prod。这10个阶段。如果您在任何时候继续使用您的应用程序,您将很难管理它。
另一件事可能是创建不同的项目,并包含您拥有的所有文件(并且您需要),从那里继承并具有扩展功能/ UI / UX。这是较慢的方法,然后是数字1,但您将依赖于您可能在一个应用程序中更改的文件,并且不希望在其他应用程序中传播该更改。所以缺点是你必须格外小心,并提前做好很多事情。
第三件事可能是创建基础应用程序组(或项目),然后您确定该做什么,该更改可以对其他应用程序执行的位置和内容(因为您知道该文件实际上正在被重用)。
最后,有一个框架,这是我最喜欢的。我正在开发一个继承基础应用程序的项目,我们发现这是一个很大的问题。你开始分开,然后,一个接一个,你有特定的应用程序纠缠代码和基本的应用程序,如口袋里的耳机。如果你不尽快重构,那么解决这类问题将变得非常困难。更不用说合并和其他东西了。这是一篇关于创建框架http://www.raywenderlich.com/65964/create-a-framework-for-ios的优秀文章。当然,需要付出代价,而且您创建的每项更改都必须更新库并将其重新添加到项目中。这件事很容易被遗忘,如果你在团队中工作可能会导致构建崩溃。
毕竟,你断言你将拥有超过5个应用程序,所以我会说使用框架。通过这种方式,您可以获得更清晰,更独立的应用,并且无需考虑更改内容以及这些更改将如何影响您的其他应用。
答案 1 :(得分:0)
我建议您使用自定义项目模板。我今天做得很好。我有同样的需求。请点击此链接:https://github.com/reidmain/Xcode-6-Project-Templates/tree/master/iOS%20Application.xctemplate 下载它。您可以将现有项目中的所有文件添加到此模板,故事板中。如果您有任何疑问,我会帮助您。