ios – 如何使用不同的皮肤品牌来构建不同版本的应用程序?

ios – 如何使用不同的皮肤品牌来构建不同版本的应用程序?,第1张

概述我正在创建一个通用的应用程序,它将为不同的客户提供不同的构建.该应用程序每个客户的相同程度为99.5%,每个客户的区别在于客户自己的特定图像和文字和应用程序图标. 显然这可以使用以下标志来完成: #if defined (CUSTOMER_A) NSString* text = @"Text for customer A"; UIImage *image = [UIImage im 我正在创建一个通用的应用程序,它将为不同的客户提供不同的构建.该应用程序每个客户的相同程度为99.5%,每个客户的区别在于客户自己的特定图像和文字和应用程序图标.

显然这可以使用以下标志来完成:

#if defined (CUSTOMER_A)    Nsstring* text = @"Text for customer A";    UIImage *image = [UIImage imagenamed:@"customeraimage"];#elseif defined (CUSTOMER_B)    Nsstring* text = @"Text for customer B";    UIImage *image = [UIImage imagenamed:@"customerBImage"];

但显然我想避免这种情况,只是有:

Nsstring* text = @"Text";   UIImage *image = [UIImage imagenamed:@"image"];

(文本将是可本地化的,因此在最终版本中将使用NSLocalizedString).

我想知道一个可能的方法是将项目放入工作区以及许多静态库,每个静态库都包含每个客户的特定文本和图像,然后使用不同的方案来创建不同的构建.所以方案A将创建一个使用主项目和静态库A构建的目标.

我开始有一个小的概念证明,但是在走得太远之前,我首先要检查这是一个可行和合理的方法,或者如果有更好的选择.如果可行的话可以考虑几个问题:

>如何从主项目中的代码访问静态库中的图像?必须创建一个bundle来访问库的内容,这样做如何?
>根据使用哪种方案,是否可以更改应用程序桌面和市场图标?
>是否可以指定一套不同的分配证书等待每个方案使用?
静态库不能包含本地化的变体吗?

这是为了iOS,所以不可能为此使用一个框架.

感谢任何反馈.

(建筑系统将使用jenkins自动化).

解决方法 您只需要在项目中创建多个目标即可
每个目标的资源文件夹(客户/品牌).
以下是如何完成此 *** 作:

>创建两个新的资源文件夹
一个. Resources_Customer1
湾Resource_Customer2
>将相应的资源复制到相应的文件夹中
>选择项目 – >目标
>复制目标
>在[复制构建资源]中自定义资源名称,以便它指向适当的
客户/品牌
>根据所选的目标测试和验证适当的目标运行.

希望这可以帮助!

总结

以上是内存溢出为你收集整理的ios – 如何使用不同的皮肤/品牌来构建不同版本的应用程序?全部内容,希望文章能够帮你解决ios – 如何使用不同的皮肤/品牌来构建不同版本的应用程序?所遇到的程序开发问题。

如果觉得内存溢出网站内容还不错,欢迎将内存溢出网站推荐给程序员好友。

欢迎分享,转载请注明来源:内存溢出

原文地址:https://54852.com/web/1098497.html

(0)
打赏 微信扫一扫微信扫一扫 支付宝扫一扫支付宝扫一扫
上一篇 2022-05-28
下一篇2022-05-28

发表评论

登录后才能评论

评论列表(0条)

    保存