菜鸟教程小白 发表于 2022-12-13 14:02:06

ios - 代码未通过 plist 获取环境变量


                                            <p><p>在我的主要目标 <code>.plist</code> 文件中,我有这个:</p>

<pre><code>&lt;key&gt;HIHomePage&lt;/key&gt;
&lt;string&gt;$(MY_BASE_URL)&lt;/string&gt;
</code></pre>

<p>我在每个我拥有的环境(开发、登台、生产)中都使用了一个构建模式,因此我在模式的构建步骤中的环境变量中设置了 <code>MY_BASE_URL</code>。</p>

<p>然后在代码中我有这个:</p>

<pre><code>NSString *baseURL = [ objectForInfoDictionaryKey:@&#34;HIHomePage&#34;];
</code></pre>

<p>原来是一个空字符串,但是诸如 <code>CFBundleName</code> 之类的东西正在被拾取。</p>

<p>我在这里错过了什么?</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>要从环境变量中获取值,请使用以下代码</p>

<pre><code>NSString *baseURL = [[ environment] objectForKey:@&#34;MY_BASE_URL&#34;];
</code></pre>

<p>引用:<a href="http://rosettacode.org/wiki/Environment_variables#Objective-C" rel="noreferrer noopener nofollow">http://rosettacode.org/wiki/Environment_variables#Objective-C</a> </p>

<p>要从方案中添加 plist 中的项目,您应该添加一个名为 <code>MY_BASE_URL</code> 的用户定义的build设置,并根据您的方案输入值。然后在 <code>.plist</code> 文件中使用它。</p>

<p>对于添加用户定义的build设置,
选择目标
从编辑器菜单 > 添加设置 > 用户定义的设置</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 代码未通过 plist 获取环境变量,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/35078912/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/35078912/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 代码未通过 plist 获取环境变量