2015年7月29日水曜日

Swiftではじめるアプリ作成 CocoaPodsでAlamofireとSwiftJsonを使ってアプリを作る その2

  • 公開日:2015年07月29日
  • 最終更新日:2015年07月30日

記事概要


その1の続きです。Alamofireを利用してWEB APIに接続します。
この記事では、livedoor天気情報のお天気Webサービス『Weather Hacks 』を使ってAlamofireの使い方を説明したいと思います。

開発環境


  • Xcode 6.4
  • Swift 1.2

難易度


★★★☆☆(普通)

Alamofireの実装


前回のプロジェクトで作成した(自動でされた)ViewControllerに処理を記載します。

【swift】

import UIKit
// 追加
import Alamofire


class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // 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.
    }


}

Alamofireを利用するには、宣言に『import Alamofire』と記載します。
こうすることでAlamofireのライブラリが利用可能になります。

request処理


最初に、request処理を記載します。
Weather HacksのAPIにGET処理を送ります。

【almojson/Gemfile】

import UIKit
import Alamofire


class ViewController: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
        // Do any additional setup after loading the view, typically from a nib.
        requestAlamofire()
    }
    
    // AlamofireでGET REQUESTを送信
    func requestAlamofire() {
        Alamofire.request(.GET, "http://weather.livedoor.com/forecast/webservice/json/v1", parameters: ["city": 200010])
            .responseJSON { (request, response, JSON, error) in
                if (response?.statusCode == 200) {
                    println("success")
                    println(JSON)
                } else {
                    // error
                    println(error)
                }
        }

    }

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


}

第一引数にRESTの種類、第二引数にurl、第三引数にパラメーターを設定します。

結果確認


上記のコードをビルドして、dubugログを見ると、以下のデータが出力されているのが確認できます。

success
Optional({
    copyright =     {
        image =         {
            height = 26;
            link = "http://weather.livedoor.com/";
            title = "livedoor \U5929\U6c17\U60c5\U5831";
            url = "http://weather.livedoor.com/img/cmn/livedoor.gif";
            width = 118;
        };
        link = "http://weather.livedoor.com/";
        provider =         (
                        {
                link = "http://tenki.jp/";
                name = "\U65e5\U672c\U6c17\U8c61\U5354\U4f1a";
            }
        );
        title = "(C) LINE Corporation";
    };

    // 長いので省略
    publicTime = "2015-07-04T17:00:00+0900";
    title = "\U9577\U91ce\U770c \U9577\U91ce \U306e\U5929\U6c17";
})


jsonデータがきちんと取得できているのが確認できました。
次回は、SwiftJsonを使ってこのjsonデータを扱います。

以上です。

Swiftでのiphoneアプリ開発にオススメの本


詳細swiftよりこちらの本をオススメします。
objective-cの経験がある人や、初心者から中級者までの開発者はこの本のほうが役に立ちます。
ただし、swiftはバージョンアップの速度が早いので、購入するときは自分が利用しているswiftのバージョンでも役に立つことを確認してから購入するように注意してください。

関連する記事

参考サイト

この記事がお役にたちましたらシェアをお願いします

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

0 件のコメント:

コメントを投稿

Related Posts Plugin for WordPress, Blogger...