菜鸟教程小白 发表于 2022-12-13 14:54:50

ios - 如何与框架项目swift共享父(主机)项目pod?


                                            <p><p>我正在开发框架,我已将此框架项目添加到宿主项目中。现在我想将 cocoapods pod(框架)添加到父(主机)项目中。并将同一个 pod 共享到子(框架)项目中。或者有什么我可以添加到 Podfile 并与子项目共享的东西。</p>

<p>SwiftProtoBuf 框架,我想用。而且我不想做伞式框架。</p>

<p>我们可以在父子项目之间共享 cocoapods pod</p>

<pre><code>platform :ios, &#39;8.0&#39;
use_frameworks!

workspace &#39;ParentApp.xcworkspace&#39;

abstract_target &#39;commonpods&#39; do
    pod &#39;SwiftProtobuf&#39;, git: &#39;https://github.com/apple/swift-protobuf.git&#39;, :tag =&gt; &#39;0.9.24&#39;

    target &#39;ParentApp&#39; do
      project &#39;ParentApp.xcodeproj&#39;

    end

    target &#39;ChildApp&#39; do
      project &#39;ChildFramework/ChildApp.xcodeproj&#39;
    end

end
</code></pre>

<p>或者我是否需要将 pod 添加到两个项目中,例如</p>

<pre><code>platform :ios, &#39;8.0&#39;
    use_frameworks!
      target &#39;ParentApp&#39; do
            project &#39;ParentApp.xcodeproj&#39;
    pod &#39;SwiftProtobuf&#39;, git: &#39;https://github.com/apple/swift-protobuf.git&#39;, :tag =&gt; &#39;0.9.24&#39;
      end

      target &#39;ChildApp&#39; do
            project &#39;ChildFramework/ChildApp.xcodeproj&#39;
      pod &#39;SwiftProtobuf&#39;, git: &#39;https://github.com/apple/swift-protobuf.git&#39;, :tag =&gt; &#39;0.9.24&#39;
    end
</code></pre></p>
                                    <br><hr><h1><strong>Best Answer-推荐答案</ strong></h1><br>
                                            <p><p>经过小小的努力,我能够解决它,它可能会帮助有需要的人。</p>

<ol>
<li><p>创建空白 .xcworkspace , Xcode->File->New->Workspace</p></li>
<li><p>在 xcode 中打开您的 .xcworkspace 文件,将您的 Host(partent) 项目添加到 .xcworkspace</p></li>
<li><p>在 .xcworkspace 中添加您的框架(子)项目。</p></li>
</ol>

<p>和Podfile的结构是一样的。</p>

<pre><code>platform :ios, &#39;8.0&#39;
use_frameworks!

workspace &#39;MyWorkSpaceName.xcworkspace&#39;

abstract_target &#39;CommonPods&#39; do
    pod &#39;SwiftProtobuf&#39;, git: &#39;https://github.com/apple/swift-protobuf.git&#39;, :tag =&gt; &#39;0.9.24&#39;

    target &#39;MyHostAppProject&#39; do
      project &#39;MyHostAppProject/MyHostAppProject.xcodeproj&#39;

    end

    target &#39;MyFrameworkProject&#39; do
      project &#39;MyFrameworkProject/MyFrameworkProject.xcodeproj&#39;
    end

end
</code></pre>

<p>确保已创建 .xcworkspace 并将您的项目都添加到工作区中,然后仅将 pod 安装到您的项目中。</p></p>
                                   
                                                <p style="font-size: 20px;">关于ios - 如何与框架项目swift共享父(主机)项目pod?,我们在Stack Overflow上找到一个类似的问题:
                                                        <a href="https://stackoverflow.com/questions/42455457/" rel="noreferrer noopener nofollow" style="color: red;">
                                                                https://stackoverflow.com/questions/42455457/
                                                        </a>
                                                </p>
                                       
页: [1]
查看完整版本: ios - 如何与框架项目swift共享父(主机)项目pod?