gpt4 book ai didi

ios - 对现有iOS应用程序加白标签的最佳方法

转载 作者:行者123 更新时间:2023-12-01 18:06:12 25 4
gpt4 key购买 nike

我开始在一家开发用于移动支付的应用程序的公司工作。有一个“终端”应用程序,它可以接收客户的付款,然后还有一个“钱包”应用程序,用户可以下载(并在这些终端上使用)进行付款。

该项目包含2个目标-一个针对电子钱包,另一个针对终端。该应用程序仅在2个国家/地区使用。一切都很复杂,并且具有庞大的代码库。

现在,我需要为一个想要给客户使用整个产品的白标贴上,该客户想要以自己的品牌(可能还有一些附加功能或没有某些特定功能)使用我们的应用程序(两个目标),我不确定最好的方法是什么实现这一目标。

目前,我看到3个选项:

  • 复制整个项目

  • 将整个项目复制到一个新文件夹并在该新文件夹中进行更改可能是最“肮脏”的方法。在某些时候,我的第一个代码库可能与重复的代码库有太多不同。此外,如果出现任何与安全性相关的问题,则必须在两个项目中都进行修复。
  • 创建另外2个目标

  • 我实际上在想,这将是最好的方法。在开始时,对我来说,为电子钱包和终端创建一个新目标,然后检查源代码中的当前目标来决定应启用或禁用哪些功能。但是后来我创建了新目标,并注意到我将必须为该新目标在每个单个类上设置该复选标记。除此之外,我不确定这是否是最好的方法。
  • 使用If-conditions

  • 第三种选择是使用if循环包装每个仅在一个应用程序中可用的函数。我将其视为“最便宜”的选项,因为它易于设置,并且我仍然可以很好地维护我的代码库。

    我还有其他选择吗?你会走哪条路?

    基本应用程序和贴有白色标签的应用程序之间最大的不同之处在于其语言。贴有白色标签的版本从右到左,但是iOS在这方面做得很好,不需要我进行所有镜像。

    最佳答案

    您肯定想要额外的目标。有了新目标,就可以轻松使用单独的捆绑包标识符,签名设置等。不得不勾选多个框以将文件添加到新目标中似乎很痛苦(也许可以更快地使用Xcode中目标的Build Phase | Compile Sources列表),但是在应用之间创建真正的分隔是值得的。

    与其使用大量的源代码检查来确定您所使用的白色标签应用程序,不如考虑使您的应用程序更加数据驱动。一个plist文件可用于确定您的应用具有哪些功能,并且每个目标可以使用一个不同的plist文件。

    例如,它可能包含一个名为features的顶级词典,其中包含一堆功能名称的true / false值。您有一个FeatureManager可以读取文件,并且是所有想知道是否应该可用的应用程序组件的唯一事实来源。

    关于ios - 对现有iOS应用程序加白标签的最佳方法,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43597228/

    25 4 0