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

プロフィール

入江 慎吾/サービス開発だけで生きていく
自分のサービスだけで自由に生きる。勢いで受託開発をすべてやめて、サービスだけ作って生きていくことを決めたフリーのエンジニア。得意を教えて副業にできるMENTAを開発中! (詳しいプロフィール)
WEBサービス・アプリ開発に役立つ情報をイリテクの入江がお届けします。プログラミング、UI/UXデザイン、SNS・ブログマーケティングなど、プロダクト開発だけで自由に生きていくための実践的な情報を配信しています。

PRODUCT

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

RELATION

関連する記事

SPONSOR

TAG

タグから記事をさがす