2014-11-21 64 views
2

我知道还有其他类似的问题,我看到其中一些人试图解决我的问题。如果有人能帮助我,这将是非常棒的。AFNetworking Swift Integration

我正在尝试使用swift在iOS项目上集成AFNetworking。我正在使用cocoapods来管理外部依赖关系。我荚文件是这样的:

source 'https://github.com/CocoaPods/Specs.git' 
platform :ios, '7.0' 

pod 'TPKeyboardAvoiding', '~> 1.2' 
pod 'AFNetworking', '~> 2.5' 

然后,我有一个桥Header.h能够用客观C.它的工作原理与FacebookSdk,所以我在这里补充下进口AFNetworking.h:

#ifndef MyProject_Bridge_Header_h 
#define MyProject_Bridge_Header_h 

#import <FacebookSDK/FacebookSDK.h> 
#import <AFNetworking/AFNetworking.h> 

#endif 

后,当我尝试类似:

let manager = AFHTTPRequestOperationManager() 

它无法识别。

我一直在关注这些链接,一切似乎确定对我说:

https://medium.com/@aommiez/afnetwork-integrate-swfit-80514b545b40 https://medium.com/@stigi/swift-cocoapods-da09d8ba6dd2

的问题能够得到什么样的想法。

谢谢很多

+2

尝试Alamofire代替。这是一个基于Swift的网络层。更新至今。它也在github上。 – 2014-11-21 14:24:05

+0

非常感谢@AnnaDickinson的帮助!这似乎是一个好的图书馆,与AFNetworking一样创建。我会试一试。 – jantunes 2014-11-21 15:16:51

+0

再次工作,我成功地把它工作。不知道是什么问题,但我已经完成了过程和主要区别,我认为文件名已更改为MyProjectName-Bridge-Header.h而不是只有Bridge-Header.h。 此内容简单改为: #import #import jantunes 2014-11-25 16:41:12

回答

-1
  1. 在Xcode中创建一个新的项目。
  2. 然后转到终端 - >您的项目目录 - >键入pod init
  3. 然后转到终端 - >您的项目目录 - >键入pod init 这会将pod安装到您的项目中。
  4. 然后关闭现有的xcode项目并转到项目位置,您会看到有一个名为pod的文件,然后在该pod文件中添加此pod'AFNetworking','〜> 3.0并保存它。
  5. 然后再次转到终端并在您的项目目录中输入pod install并进入。
  6. 然后转到项目文件夹,你可以看到有一个工作区文件与您的项目命名。
  7. 在xcode中打开它。
  8. 转到添加新文件,然后在源代码部分添加一个头文件。将其命名为YourProjectName-Bridging-Header。 9.然后在项目设置部分,转到Swift Compiler - 代码生成 并将您的头文件名添加到Objective -C桥接头。重要的是你需要给你的文件的确切位置。

Image of a sample project hierarchy

  • 在我的情况我Networking.Bridging-Header.h是内部网络 - > Networking-> Networking.Bridging-Header.h。
  • 所以我需要添加Networking/Networking-Bridging-Header.h来启动我的桥接头所在的组。 -Thats'it。然后在任何swift文件中,你可以简单地使用你的pod .NO需要导入任何事情。那就是桥接的美。