美文网首页
Xcode多环境配置

Xcode多环境配置

作者: 崔希羽 | 来源:发表于2021-01-16 00:54 被阅读0次

在Xcode开发中通常会针对Debug/Release使用不同的服务器地址,最简单的方式那肯定是直接在代码中进行修改。但是如果每次都手动进行修改太麻烦了,也对不起我们程序员的身份不是~

如何能更方便的进行管理呢,首先看下我们非常熟悉的几个东西:

  • project:包含了项目所有的代码,资源文件等所有信息。
  • target:对指定代码和资源文件的具体构建方式
  • scheme 对指定target的环境变量以及编译环境的配置

显然我们可以从target以及scheme进行入手,废话不多说,直接切入正题。

方式一

通过添加User-Defined Settings,如HOST_URL,然后在Info.plist文件中添加自定义的键值对,如键=host,值=${HOST_URL},即可根据环境动态读取HOST_URL,通过访问Info.plist文件中的host取值。示例如下:


image.png

取值使用代码也比较简单,可以进行简单的封装再使用

    NSString *path = [[NSBundle mainBundle] pathForResource:@"Info.plist" ofType:nil];
    NSDictionary *dict = [NSDictionary dictionaryWithContentsOfFile:path];
    NSLog(@"%@",dict[@"host"]);

但是如果参数较多,或者在release环境下使用测试地址等,再使用这种方式那就相对比较麻烦了,只能通过添加额外的参数进行控制,参数多了配置起来就会麻烦,而且容易遗漏或出错。
幸好我们的Xcode已经支持了使用xcconfig文件对工程target进行配置,比如我们经常使用的cocoapods它就是使用这个功能来动态的修改我们的Other Link Flag或者Header Search Path等build settings里面的参数,那么同样我们自己也可以创建Configuration Settings File来使用。

image.png
方式二

使用Xcode创建xcconfig文件,按照环境进行命名,然后可以看到会有一个苹果提供的使用说明的地址,实在是太贴心了~

// Configuration settings file format documentation can be found at:
// https://help.apple.com/xcode/#/dev745c5c974
image.png

然后就可以针对这几种环境定义不同的HOST_URL等值,也可以在这此文件中导入其它的xcconfig文件,还可以定义build settings里面的配置,对于这些build settings里面的选项的KEY,在官方网站提到,这里有一个小技巧,直接使用拖拽的方式将选项拖到xcconfig文件中,会自动显示出选项的键值对。

添加scheme并针对scheme进行Build configuration的配置进行修改


image.png

使用自定义的Key时与方式一相同,将xcconfig中定义的key添加到Info.plist文件中读取

我个人比较推荐第二种方式,这种方式更加方便管理和维护和扩展,更加符合开发的设计原则。

相关文章

  • 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/xfsgaktx.html