菜鸟教程小白 发表于 2022-12-11 20:01:13

ios - 仅在 iOS 11 可用时导入模块


                                            <p><p>我想在我的项目中从 CocoaPods 导入一个模块,该模块的最小部署目标设置为 iOS 9.0。</p>

<p>在我的 Podfile 中,我将该特定框架的最低部署目标设置为 iOS 11,如下所示:</p>

<pre><code>#CoreML
platform :ios, &#39;11.0&#39;
pod &#39;xxx&#39;, &#39;1.0.0&#39;
</code></pre>

<p>这样我就可以<code>pod install</code>。</p>

<p>问题是当我在我的文件中导入它时,我收到以下错误:</p>

<blockquote>
<p>Module file&#39;s minimum deployment target is ios11.0 v11.0.</p>
</blockquote>

<p>只有在 iOS 11 可用的情况下,我应该如何导入它?我尝试使用 </p>

<pre><code>if #available(iOS 11, *) { ... }
</code></pre>

<p>和 <code>@available(iOS 11)</code>,但没有运气。</p></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><ol>
<li><p>Podfile 不支持特定于 Pod 的部署目标。您可以像使用 <code>platform :ios, 'x.y'</code></p></li> 一样为所有 Pod 设置部署目标和生成的聚合目标
<li><p>你可以在你的 Lib 的 Podspec 中设置一个特定于 Pod 的部署目标:<code>spec.ios.deployment_target = '11.0'</code> -> 但这对你的情况没有帮助。 </p></li>
<li><p>在 Podfile (11.0) 中使用比在项目 (9.0) 中更高的部署目标是没有意义的。这些值应始终相等。</p></li>
</ol>

<p><strong>解决方案</strong>:在您的 Podfile 中设置 <code>platform :ios, '9.0'</code> 并有条件地导入/使用带有 @available 和 #available 的 11.0-only Lib。您可能还需要在“与库链接”下<strong>选择性地链接</strong>您的库,请参阅 <a href="https://developer.apple.com/library/content/documentation/MacOSX/Conceptual/BPFrameworks/Concepts/WeakLinking.html#//apple_ref/doc/uid/20002378-BBCJICEC" rel="noreferrer noopener nofollow">Apple Doc</a> </p>

<p>如果这对您不起作用,请分享更多信息(完整的 Podfile、Xcode 和 Cocoapods 版本、Lib 的 Podspec)</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 仅在 iOS 11 可用时导入模块,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/49777135/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/49777135/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 仅在 iOS 11 可用时导入模块