AFNetworkingの使い方!WEB APIと非同期で連携する

2018/03/23更新 カテゴリー:開発奮闘記 タグ: ,
  • このエントリーをはてなブックマークに追加

基本的にライブラリには手を出さない方です。理由は言語のバージョンアップ等によって、ライブラリが急に動かなくなったりすると、その修正に時間がかかることが多いから。しかし、あまりに使いやすいライブラリは使います。使わないで作ったほうが時間がかかるからです。というわけで、今回はAFNetworkingライブラリのインストールと使い方について。

SPONSOR

AFNetworkingとは

WEB APIを使って、APIにリクエストしてjSONやXMLを取得する。といったよくあるアプリを作る場合、標準のもので作ろうとすればNSURLConnection等を使います。しかし、APIを呼び出す毎にコードを書いていては、膨大な行数になり、可読性がよくありません。そこで、AFNetworkingライブラリを使うと、少ないコードでjSONの解析まで含めて、サクッと処理をしてくれるのです。

GETでAPIにリクエストする例。

AFHTTPRequestOperationManager *manager = [AFHTTPRequestOperationManager manager];
NSDictionary* param = @{@"seibetsu":@"dansei",@"nenrei":@"30"};
[manager GET:@"http://example.com/v1/" parameters:param success:^(AFHTTPRequestOperation *operation, id responseObject) {
    NSLog(@"JSON: %@", responseObject);
} failure:^(AFHTTPRequestOperation *operation, NSError *error) {
    NSLog(@"Error: %@", error);
}];

これだけで非同期でAPIにリクエストして、jSONデータを受け取るところまでできてしまいます。分かりやすいですね。

CocoaPodsを使って、AFNetWorkingをインストール

通常ライブラリを探して、必要なバージョンを探してダウンロードして、読み込んで…ということをやる必要がありますが、CocoaPodsを使えばかんたんにライブラリの管理・インストールができます。

ターミナルを起動

$ sudo gem install cocoapods

cocoapodsをインストール

プロジェクトファイルが置いてあるディレクトリに移動

$ cd /your/xcode/project

Podfileの作成

$ vi Podfile

platform :ios, "7.0"
pod 'AFNetworking', '~> 2.0'

プラットフォームがiOSの7.0以上で、AFNetworkingというライブラリのバージョン2系を指定してインストール。

指定したライブラリのインストール

$ pod install

プロジェクト名.xcworkspaceというファイルができます。今後はプロジェクト名.xcodeprojではなく、こちらから起動します。あとは、必要なところでAFNetworking.hをimportして、さきほどのコードを利用できます。

SPONSOR

参考リンク

iOSライブラリ管理の神ツール「CocoaPods」のインストールと使い方
AFNetworking

iPhoneアプリ開発のTips一覧はこちら

効率のいいiOSプログラミング習得法

独学でプログラミングをはじめてもう16年。
なかなか勉強が進まない人のために記事を書きました。

フリーランスエンジニアの稼ぎ方

  • このエントリーをはてなブックマークに追加
SPONSOR

PROFILE

プロフィール

入江 慎吾
自分が作ったサービスで生きていく。同じゴールを目指すサービス開発集団「入江開発室」を運営(現在約280名) / 個人間スキルシェアサービス「MENTA」は約1ヶ月で売上100万円を達成。1日で100社が利用した「JobTag」など多数開発
(詳しいプロフィール)

PRODUCT

イリテクで開発したプロダクト

RELATION

関連する記事

SPONSOR

TAG

タグから記事をさがす