美文网首页iOS开发(Object-C)
Swift如何判断不同的targets和DEBUG

Swift如何判断不同的targets和DEBUG

作者: XZY_iOS | 来源:发表于2019-01-28 17:17 被阅读15次

    Swift如何判断不同的targets和DEBUG的呢?

    一、写app的时候,有的时候会因为种种原因,同一个Project会对应不同的target,比如不同的测试环境,不同的bundleID 等等
    6321331-8aefe4233ff4af9e.png

    target建好之后,下一步就需要通过不同的target来执行不同的代码,这里指需要配置一个全局的宏定义就可以了。如何配置这个全局的宏定义,见如下步骤:
    1.选中其中一个target ,我们这里选择是SwiftTest这个target, 选中Build Settings, 找到Other swift Flags


    6321331-8d4fd21ee113a0f5.png
    1. 在Debug和Release中加入自定义的宏就可以啦,加的时候需要注意先加"-D"才可以,不加"-D"无法生效,至于原因暂时还不清楚


      6321331-547bc316b253c86a.png

      3.接下来就可以在代码中使用SwiftTest这个宏啦

    6321331-58daa508ccad6bbb.png

    Tip:

    preprocessor Macros也可以配置全局的宏,但是在swift工程上无效

    6321331-44a5bc5e64e36a64.png

    判断多个target

    #if YueKanYueZhuan//阅看阅赚
    let APPName = "YueKanYueZhuan"
    #elseif DZYangSheng//抖转养生
    let APPName = "DZYangSheng"
    #elseif DouZhuan//抖转
    let APPName = "DouZhuan"
    #else//全民头条
    let APPName = "quanmingtoutiao"
    #endif
    
    二、Swift下设置Debug

    在target下 Build Settings 搜索 Other Swift Flags

    设置Debug 按照上面的方法先添加"-D"在添加"DEBUG",注意不要和Release一起添加,否则无效。

    //使用方式和oc下一样

    #if DEBUG // 判断是否在测试环境下
    let name = "DEBUG"
    #else
    let name = "Release"
    #endif
    

    ok,结束了!开始你的工作吧!

    相关文章

      网友评论

        本文标题:Swift如何判断不同的targets和DEBUG

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