错误:导入 Alamofire

Posted

技术标签:

【中文标题】错误:导入 Alamofire【英文标题】:Error: Importing Alamofire 【发布时间】:2015-08-05 06:14:28 【问题描述】:

..嗨,我很难导入 Alamofire 我已经完成了教程,但是我在“import Alamofire”第 2 行收到了一条错误消息。我该怎么办??..在构建阶段我的目标依赖项是“Alamofire ios (Alamofire)”,这是我唯一的选择,与教程中的“Alamofire OSX (Alamofire)”没有“Alamofire (Alamofire)”的选项..

import UIKit
import Alamofire

class ViewController: UIViewController 

  override func viewDidLoad() 
      super.viewDidLoad()

      Alamofire.request(.GET, "http://ec2-54-169-246-41.ap-southeast-1.compute.amazonaws.com:3000", parameters: nil)
        .response  request, response, data, error in
            println(request)
            println(response)
            println(error)
      
      // Do any additional setup after loading the view, typically from a nib.
  

  override func didReceiveMemoryWarning() 
      super.didReceiveMemoryWarning()
      // Dispose of any resources that can be recreated.
  

【问题讨论】:

有时,当您简单地构建项目时,它会消除错误,您是否考虑过这个问题? 【参考方案1】:

当我尝试从 git 复制项目并将其添加到我的项目时,我在使用 Alamofire 时遇到了很多麻烦。我的解决方案是使用 CocoaPods 的“s60”注释,所以这里是使用 Podfile 的步骤:

首先打开终端并使用以下命令安装 CocoaPoads:

sudo gem install cocoapods

安装后使用命令cd+“路径名称”进入您的应用程序的文件夹,例如:

cd Documents
cd AlamofireProject

当您在项目文件夹中时,使用下一个命令:

pod init

运行此命令后,应该在您的目录中创建一个 Podfile,您应该打开 Podfile,然后指定您要使用的 Alamofire 版本、Podfile 的源以及您要在应用程序中使用框架,这里你的 Podfile 应该是什么样子的

source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
use_frameworks!

target 'YOUR APP NAME' do
pod 'Alamofire', '~> 2.0'

end

编辑 Podfile 后保存它,然后在终端中运行此命令:

pod install

如果现在一切顺利,您的应用文件夹中应该有一个名为 Pods 的新文件夹和一个“.xcworkspace”文件。现在您必须在工作区文件中工作,您可以像这样顺利地引用 Alamofire 库:

import Alamofire

    Alamofire.request(.GET, "https://omgvamp-hearthstone-v1.p.mashape.com/cards",parameters:["X-Mashape-Key:":"ibxqtnAb9BmshWhdS6Z4zttkVtQop1j0yGSjsn6tn5x2Y4BBF0"])
        .responseJSON  _, _, result in
            switch result 
            case .Success(let data):
                let json = JSON(data)
                debugPrint(data)
                self.Photos = self.ParseHS(json)
                self.performSegueWithIdentifier("ToCollection", sender: self)
            case .Failure(_, let error):
                print("Request failed with error: \(error)")
            

        

这是我在我的一个应用程序中使用的 Alamofire 请求的示例函数。如果您有任何问题,请给我留言。 XD 问候。

【讨论】:

【参考方案2】:

集成 Alamofire 的最简单方法是使用 CocoaPods

将以下内容添加到您的 Podfile 并运行 pod update Alamofire 将自动集成到您的项目中

platform :ios, '8.0'
use_frameworks!

pod 'Alamofire', '~> 1.3.0

'

【讨论】:

【参考方案3】:

Alamofire 是用 Swift 编写的非常好的网络库。在项目中集成 Alamofire 有两种方式:

    可可豆荚: 要将新的Alamofire 库添加到您当前的项目中,请使用pod installation。以下是您必须集成到 pod 文件中以全新安装 Alamofire 的代码。

      source 'https://github.com/CocoaPods/Specs.git'
      platform :ios, '8.0'
      use_frameworks!
    
     pod 'Alamofire', '~> 2.0'
    

随着最新版本的 Alamofire 2.0 请求方法得到改变。

我发布了一些对您最有帮助的示例步骤

这是我的示例代码, //步骤:

    import Alamofire

// 步骤:1

     var manager = Manager.sharedInstance

// 指定我们需要的Headers

    manager.session.configuration.HTTPAdditionalHeaders = [
    "Content-Type": "application/graphql",
    "Accept": "application/json" //Optional
    ]

// Step : 3 然后调用Alamofire请求方法。

    Alamofire.request(.GET, url2).responseJSON  request, response,result in
    print(result.value)
    

试试这个,或者你可以在 xcode 7 上查看 alamofire 的最新更新:

https://github.com/Alamofire/Alamofire

在以前版本的 Alamofire 中,请求方法中多了一个句柄参数,现在已删除。检查 Git 以获取更多信息。我想这会对你有更多帮助。

    手动: 从 git 下载 Alamofire:https://github.com/Alamofire/Alamofire,然后解压下载的文件夹。

从您的项目 -> click on add files to "project" -> 导航到提取的文件夹 -> 找到 Alamofire.xcodeproj -> 选择 Alamofire.xcodeproj 文件 -> 请确保选中 Copy items if needed

现在是时候将 Alamofire 添加到嵌入式二进制文件中了。为此,请单击项目名称,然后导航到常规选项卡 -> 选择 Embedded Binaries -> 单击“+” -> 现在添加 Alamofire.xcodeproj

最后在 .swift 文件中使用 import Alamofire,无论何时你想使用 Alamofire。

但我个人的意见是,如果您使用Xcode 7Swift 2,那么您必须为Alamofire 安装Cocoapod

【讨论】:

以上是关于错误:导入 Alamofire的主要内容,如果未能解决你的问题,请参考以下文章

如何修复 Firebase 9.0 导入错误? “尝试导入错误:‘firebase/app’不包含默认导出(导入为‘firebase’)。”

oracle导入错误

MyEclipse 导入项目后出现错误怎么办?

MAVEN项目导入我的工程错误。。

fastai.vision 导入错误:如何修复导入错误以便我可以使用 ImageDataBunch.from_folder?

Shp数据导入数据库发生错误