Swift 在Pod中嵌入没有模块的框架
我正在使用作为框架提供的第三方库:library.framework。显然,它只能在我的Swift 在Pod中嵌入没有模块的框架,swift,module,frameworks,cocoapods,Swift,Module,Frameworks,Cocoapods,我正在使用作为框架提供的第三方库:library.framework。显然,它只能在我的Swift项目中通过执行#导入的桥接头使用。这在大多数情况下都很好 然而,我目前正在开发一个Pod,我想在其中使用Library.framework。这意味着我不能依赖桥接头 我试图在我的Pod目标中链接Library.framework(请参见常规>链接的框架和库),但是,一旦Pod安装到我的应用程序中,Xcode表示Pod无法编译,因为在库中找不到一些文件 这里采用的最佳策略是什么?在您的pod项目中,我
Swift
项目中通过执行#导入的桥接头使用。这在大多数情况下都很好
然而,我目前正在开发一个Pod,我想在其中使用Library.framework。这意味着我不能依赖桥接头
我试图在我的Pod目标中链接Library.framework(请参见常规>链接的框架和库
),但是,一旦Pod安装到我的应用程序中,Xcode表示Pod无法编译,因为在库中找不到一些文件
这里采用的最佳策略是什么?在您的pod项目中,我假设您有一个名为[PodName].h的文件,它看起来与下面的文件类似。
您可以尝试在此文件中添加标头
//
// PodName.h
// PodName
//
// Created by John Doe on 06.04.2016.
// Copyright © 2016 John Doe Inc. All rights reserved.
//
#import <UIKit/UIKit.h>
//! Project version number for PodName.
FOUNDATION_EXPORT double PodNameVersionNumber;
//! Project version string for PodName.
FOUNDATION_EXPORT const unsigned char PodNameVersionString[];
// In this header, you should import all the public headers of your framework using statements like #import <PodName/PublicHeader.h>
#import <Library/Library.h> // Add framework header here.
//
//PodName.h
//豆荚名称
//
//由John Doe于2016年4月6日创建。
//版权所有©2016 John Doe Inc.保留所有权利。
//
#进口
//! PodName的项目版本号。
基金会\导出双PodNameVersionNumber;
//! PodName的项目版本字符串。
基础_导出常量unsigned char PodNameVersionString[];
//在这个标题中,您应该使用#import之类的语句导入框架的所有公共标题
#导入//在此处添加框架标题。
我想我成功了
诀窍是在Pod.podspec中的源文件
和公共头文件
中添加.h文件
像这样:
s.source_files = 'Library.framework/Headers/*.h'
s.public_header_files = 'Library.framework/Headers/*.h'
这样,所有头文件都会显示在Pod umbrane.h
中,现在可以在我的应用程序中使用。您是否尝试编辑您的方案?在构建部分,如果您取消选中“并行化构建”,您可以选择目标编译的顺序谢谢您的回答,但这会引发更多的问题:什么方案以及它应该做什么?产品>方案>编辑方案>构建。然后取消选中“并行化构建”,您就可以对目标进行重新排序,而不会改变任何内容。问题仍然存在:在我的Pod的Library.framework中找不到文件。请看一下构建阶段。检查您的库是否显示在“使用库链接二进制文件”和“嵌入框架”中