元ネタ: https://github.com/AFNetworking/AFNetworking/wiki/Getting-Started-with-AFNetworking の通りだといくつかつまずいたので、メモとして残しておこう。
cocoapod のインストール
Homebrew をインストールしているなら、brew 経由でインストールするのが一番お手軽
% brew cask install cocoapods # cask なのに注意
% rehash # zsh の場合
cocoapod で AFNetworking をインストール
まず XCode で適当に Swift なプロジェクトを作成します。
ここでは AFTest というプロジェクト名ということにしておきます。
作成したらもう使わないのでウインドウを閉じておきます。
% cd AFTest
% vim Podfile # 以下のようにファイルを作成
source 'https://github.com/CocoaPods/Specs.git'
platform :ios, '8.0'
pod "AFNetworking", "~> 2.5"
% pod install
Analyzing dependencies
CocoaPods 0.38.2 is available.
To update use: `sudo gem install cocoapods`
For more information see http://blog.cocoapods.org
and the CHANGELOG for this version http://git.io/BaH8pQ.
Downloading dependencies
Installing AFNetworking (2.5.4)
Generating Pods project
Integrating client project
[!] From now on use `AFTest.xcworkspace`.
% open AFTest.xcworkspace
最後のコマンドで、xcodeproj ではなく、xcworkspace を使うことに注意。
コードを書く準備
まず Bridging Header を追加しましょう。
ViewController.swift と同じ階層に AFTest-Bridging-Header.h を作成し、以下のように #import <AFNetworking/AFNetworking.h>
を追加します。
更にビルド設定で Bridging Header のパスを指定します。検索窓に brid
辺りまで入力すると見つけやすいです。
この状態でビルドすると 'AFNetworking/AFNetworking.h' file not found
というエラーになります。
以下のリンクで紹介されている方法を試した所、ビルドが通るようになりました (他に正しい解決方法があるようにも思うけど...)
GET してみる
viewController.swift の viewDidLoad を以下のようにします。
override func viewDidLoad() {
super.viewDidLoad()
let manager = AFHTTPRequestOperationManager()
manager.GET("https://api.github.com/users/octocat/orgs", parameters: nil,
success: {(operation: AFHTTPRequestOperation!, response: AnyObject!) in
println("Success! \(operation)")
},
failure: {(operation: AFHTTPRequestOperation!, error: NSError!) in
println("Error: \(error)")
}
)
}
ビルドして コンソールに Succcess! と出力されれば OK です。