iOS   发布时间:2022-05-04  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了iphone – 一个代码库有三个略有不同的应用程序大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。

概述

我希望有三个应用程序,这些应用程序是基于相同的代码: > MyAppDevelopment(从Xcode构建部署到设备) > MyAppPreview(Beta测试) > MyApp(发布) 应该可以将所有三个应用程序都安装在设备上,并且他们会有自己的图标,以便在视觉上很好地区分它们. 现在我知道我可以使用各自的Info.plist文件有三个不同的目标,但是我宁愿使用Xcode的配置,这样我就不必
我希望有三个应用程序,这些应用程序是基于相同的代码

> MyAppDevelopment(从Xcode构建部署到设备)
> MyAppPreview(Beta测试)
> MyApp(发布)

应该可以将所有三个应用程序都安装在设备上,并且他们会有自己的图标,以便在视觉上很好地区分它们.

现在我知道我可以使用各自的Info.plist文件有三个不同的目标,但是我宁愿使用Xcode的配置,这样我就不必维护三个不同的目标.这是否可能使用配置,问题是应用程序标识符存储在Info.plist文件中,可以根据目标定义…

解决方法

为不@R_239_11197@的应用程序使用不同的目标提供了更多的灵活性,并且您可以在每个目标指定不同的plist文件后轻松地更改包标识符和图标等.但是,这些配置与Xcode更加集成,您可以根据配置调整任何构建设置.

经过一些更多的研究,我想出了如何通过一个目标获得两个世界的最好的:

>在xcode中创建所需的配置:ProjectName> ProjectName>信息.例如:

>调试
>预览
>发布

>现在,这三个配置可用于所有的构建设置.
>三个应用程序应该在设备上共存.
我想能够在一个设备上拥有App的所有三个版本,因为这三种类型都需要一个不同的bundle标识符.原始标识符可以是com.company.${PRODUCt_name:rfc1034identifier}.

>要实现这一点,请转到MyProject> MyApp(目标)>构建设置并点击按钮()添加构建设置
>添加新的密钥${APP_ID}并设置这样的值,并注意发布配置不应该有一个后缀:

APP_ID > 'com.company.MyApp-debug'
       > 'com.company.MyApp-preview'
       > 'com.company.MyApp'

>现在在您的Info.plist中将Bundle Identifier值更改为${APP_ID}

>您可以使用“捆绑显示名称”或“图标”属性进行相同操作,以便您可以轻松地区分应用程序.
>您可以为配置设置预处理器宏,以便能够检测代码中的当前配置.认情况下,调试配置完成:DEBUG = 1.

优点

>由于三个应用程序都有自己的标识符,所以在测试Xcode中的当前应用程序时,不会覆盖最新的预览版本.
>很好地集成到Xcode中,提供了高度的灵活性
所有构建设置现在可以根据配置单独更改
通过克隆Xcode中的现有配置,可以轻松添加新配置
>不需要额外的目标
目标对于完全不同的工件(如具有不同代码库的库或测试目标)而言更好.
>如果需要,可以在代码中使用配置.
>不同的服务URLS等可用于不同的环境.看到这个great post(感谢Jonah!),显示如何使用一个特殊的plist文件.
>不使用任何难以维护的黑客脚本

缺点

>通过使用目标,可以从一种类型的应用程序中排除一些框架.因此,例如,您可以从应用程序的调试版中排除一些分析库.
>更新:您不能使用COR_416_11845@.company.${PRODUCt_name:rfc1034identifier}替换用户定义的构建设置.因此,在这种情况下,您必须写出捆绑整个捆绑标识符.
>更新:应该使“配置感知”的一些设置移动到“构建设置”的“用户定义”部分,这对某些开发人员可能会感到不寻常.

结果

Result http://i.minus.com/jbwPgEiBra39dL.png

大佬总结

以上是大佬教程为你收集整理的iphone – 一个代码库有三个略有不同的应用程序全部内容,希望文章能够帮你解决iphone – 一个代码库有三个略有不同的应用程序所遇到的程序开发问题。

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

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。