我们有一个使用GPS追踪器的产品,除了webapp,我们现在也想提供移动应用程序。我已经创建了我们应用的Android版本。为此,我使用了一个基础项目,其中我实现了所有功能(例如,功能1和功能2)。
然后我创建了另外两个项目,它们将基础项目作为依赖项。这两个项目是我的实际应用程序。 App类会覆盖基础app类,它有两个抽象方法" hasFunction1"和" hasFunction2"它们都返回一个布尔值,我在基础应用程序中使用它来提供某种功能。
我也可以轻松地让每个应用程序的App类返回不同情况的类,因为这些类(例如活动的子类)在基础项目中实现了它们的基本功能,而app项目只扩展或覆盖某个部分功能。
现在我想为iOS做同样的事情但这里的情况有所不同。你有直接去某个类的故事板,我不知道我是否应该创建多个项目(比如在Android应用程序中),或者是否更好地使用目标。
您对此有何看法?请记住,我的应用程序几乎相同。唯一的区别是名称,有时App 1已经启用了App 2没有的功能(但将来可能会有)
这种项目的最佳方法是什么?我不知道如何在iOS中解决它
更新
我刚才有了一个想法,我想听听你的意见:
在我的操场上进行快速测试之后,这似乎与我期望的一样,但我仍然不确定是否应该创建一个框架,多个项目和/或只是不同的目标:/
答案 0 :(得分:0)
我想通了,我基本上有两个选择来实现我想要的。第一个是我在原帖的更新中已经提到的那个:
我可以创建一个协议,在核心中,我检查self是否是protocoll的一个实例,如果是,则调用协议上的方法。在我的子项目中,我只是为我的类创建一个扩展,现在它实现了我的协议。
我想到的第二种方法是,我可以使用预处理器宏和/或环境变量。
我希望这个答案可以帮助其他人解决与我相同的问题。