美文网首页
Xcode多环境配置

Xcode多环境配置

作者: ives_wang | 来源:发表于2021-02-25 16:03 被阅读0次

在进行多环境配置之前,我们需要对Xcode内的元素组成做一些了解。

1.Project:包含了项目所有的代码,资源文件等所有信息。

2. Target:对指定代码和资源文件的具体构建方式。

3. Scheme:对指定Target的环境配置。

多环境配置三种方式

 方式一: 多Target

新建一个Target,修改'BundleId',修改跟随Target新生成的Info-plist文件名

对OC来说,根据target在Builed setting 的Preprocessor Macros中定义宏,来区分不同target的不同环境

切换不同的target的编译scheme后,在代码中以下面方式使用

对swift来说,可以在Builed setting 的 Other Swift Flags 里配置一个变量,然后在Swift代码中进行判断

但是该方式并不是很方便,缺点如下:

1.会生成多个Info-plist,不便于管理

2.配置起来比较混乱

方式2:多Scheme ------ 多Configurations

一般Scheme默认有Debug和Relesse 两种Configurations,此处可以再添加第三种

这时所有的配置选项都会变成三个,此时可以新建多个Scheme,分别在不同Scheme选择对应不同的Configurations

然后我们在User-Defined定义一个HOST_URL,并在info-plist中暴露出来

切换Scheme就可以切换不同环境的HOST_URL,达到多环境配置的目的

此外,还可以在User-Defined中 为不同Scheme配置不同的appicon

这时不同Target就有了不同的icon

这种方式相较第一种方便了一些,但是依然需要在Builed setting 中进行配置

方式三:xconfig文件 (cocoapods就是使用的这种方式)

首先创建xconfig文件,需要注意的是xconfig文件与环境一一对应,命名时以 路径-项目名-环境名 来命名

并在Configurations中选择对应的xconfig文件

xconfig冲突处理

此时删除之前配置的HOST_URL,在不同Xconfig文件中写入不同HOST_URL的值,也能得到相同的效果,但是cocoa pods中也有自己的Xconfig文件,在这之前需要把cocoa pods的xconfig文件路径(注意加上根目录Pods/)引入到Xconfig文件中来解决冲突。

此时就准确打印出了Debug模式下HOST_URL

但是在两个Xconfig文件中可能配置了两个相同的Builed setting配置,这也是一种冲突,这时需要在自己的XConfig文件中用$(inherited)来继承cocoapods中的配置就可以了。

对以上三种方式进行总结:

1.多target ,可以控制需要编译的代码文件和资源文件

2.多Scheme可以提供多套环境变量

3.多xconfig 可以更好的管理和配置这些环境变量

相关文章

  • Xcode多环境配置

    To: 配置多运行环境, 区分DebugTest(Debug模式测试环境), DebugOnline(Debug模...

  • xcode多环境配置

    由于项目中我们可能存在多个环境的配置 如debug 和release 为了更方便的管理我们需要做多环境配置。那么下...

  • Xcode多环境配置

    在进行多环境配置之前,我们需要对Xcode内的元素组成做一些了解。 1.Project:包含了项目所有的代码,资源...

  • Xcode多环境配置

    "I walk slowly, but I never walk backward."我走得很慢,但从不后退 主要...

  • Xcode多环境配置

    Xcode多环境配置:多Target,多Scheme,多xcconfig 核心: 通过某种方式,让指定的代码和资源...

  • Xcode多环境配置

    Xcode多环境配置一共有3种形式: Target Scheme xcconfig Project:包含了项目所有...

  • Xcode多环境配置

    在Xcode开发中通常会针对Debug/Release使用不同的服务器地址,最简单的方式那肯定是直接在代码中进行修...

  • Xcode多环境配置

    Project:包含项目所有代码、资源文件、所有信息 Target:对指定代码、资源的构建方式 Scheme:对指...

  • Xcode多环境配置

    按照下方链接配置即可:https://cloud.tencent.com/developer/article/19...

  • [译]Xcode 环境配置最佳实践

    [译]Xcode 环境配置最佳实践 [译]Xcode 环境配置最佳实践

网友评论

      本文标题:Xcode多环境配置

      本文链接:https://www.haomeiwen.com/subject/udlufltx.html