如何手动将第三方Swift框架导入Swift iOS项目?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了如何手动将第三方Swift框架导入Swift iOS项目?相关的知识,希望对你有一定的参考价值。

我正在尝试导入并使用Swift ios项目中的OAuthSwift库。我按照他们的指示:

  • 在项目导航器中将OAuthSwift.xcodeproj拖到项目中。
  • 选择您的项目,然后选择您的应用目标。打开Build Phases面板。
  • 展开Target Dependencies组,然后添加OAuthSwift框架。每当要使用OAuthSwift时,都要导入OAuthSwift。

完成这些步骤后,使用import OAuthSwift导入OAuthSwift会导致错误No such module 'OAuthSwift',并且项目无法构建。

基于类似问题的其他一些SO问题,我尝试了以下步骤:

  • 清洁和重建
  • 将OAuthSwift框架添加到Build Phases > Target DependenciesBuild Phases > Link Binary With LibrariesBuild Phases > Embed FrameworksGeneral > Embedded Libraries的许多不同组合中
  • Build Settings > Search Paths > Framework Search PathsBuild Settings > Search Paths > Library Search Paths设置为$(SRCROOT)并递归。
  • 验证我的部署目标是否与OAuthSwift Xcode项目的部署目标匹配。

我使用git子模块从他们的主分支使用最新版本的OAuthSwift测试了这个,并且手动下载并导入了两个最新的标记版本(0.6.0和0.5.2)。

我还创建了一个全新的Xcode项目,如上导入OAuthSwift,并遇到了同样的错误。

最后,我还尝试按照https://github.com/Alamofire/Alamofire上自述文件中所述的步骤导入不同的Swift框架(Alamofire)。这也导致了同样的错误:No such module 'Alamofire'

我在用:

  • OSX 10.11.6
  • Xcode 7.3.1
  • Swift 2.2

我仍然是Xcode和Swift模块系统的新手,所以任何帮助或建议都值得赞赏。

答案

如果使用CocoaPods导入框架,您的生活将变得更加容易。如果您以前没有使用它们,一旦设置完成就很容易。您可以在命令行上使用Ruby Gems来安装CocoaPods(sudo gem install cocoapods),然后使用pod init创建一个创建pod文件。在此之后,您将其修改为包括:

platform :ios, '8.0'

use_frameworks!

pod 'OAuthSwift', '~> 0.5.0'

保存文件并运行pod install。

完成后,您将不得不关闭Xcode项目并从此处使用新创建的.xcworkspace项目文件(而不是.xcodeproj)。

以下是指向辅助参考的其他帖子的链接。 How to install cocoapods?

以上是关于如何手动将第三方Swift框架导入Swift iOS项目?的主要内容,如果未能解决你的问题,请参考以下文章

将CocoaPods(Swift)导入Xcode项目

iOS - 如何在没有第三方框架的情况下在 Swift 中创建自定义动画横幅

Xcode 8 Objective-c项目导入第三方swift框架(以Charts框架为例)

无法将 iSpeech 导入我的 iOS Swift 项目

如何在swift中使用cocoapods导入的第三方oc库

如何将 Objective C 静态库导入 Swift 框架?