はじめに

前回はTwitter APIを利用してアカウント取得を行いました。今回はTwitter APIを利用してつぶやくプログラムを作成します。

まずはTwitter APIでつぶやく前に以下の記事を参考にして画面レイアウトの設定、Twitterアカウント取得を行うプログラムを作成してください。

Twitter APIを利用してつぶやく(その1) – 実践!Swiftプログラミング3

Twitterアカウント取得を行わないとつぶやくことはできないので注意してください。

ツイートする

Twitter APIのツイートするAPIの仕様について

Twitter APIのツイートするAPIの仕様は下記のようになっています。Twitterでツイートするためには下記の仕様にしたがってHTTPリクエストを行うプログラムを記述する必要があります。

POST statuses/update – ツイートを投稿する

 

ツイートするには最低限以下を設定してHTTPリクエストを行います。

  • HTTPリクエストURL: https://api.twitter.com/1.1/statuses/update.json
  • POSTメソッドを使用する
  • パラメータ「status」は必須。パラメータ「status」:ツイートする内容を設定する
  • 取得したTwitterアカウントのデータを渡す

また、ツイート成功時にJSONデータで結果が返って来ますが、このデータは使用しないので今回はデバッグエリアにJSONデータを表示させるだけにします。

JSONってなにもの?

 

ツイートするプログラム

Twitterアカウント取得処理ができたら次は上記の仕様にしたがって、Buttonをタップした時にTextViewの内容をツイートするようにプログラミングしましょう!

Buttonをタップした時につぶやくプログラムは以下のようになります。関数「postTweet」をButtonをタップした時に呼び出して処理しています。

 

上記のプログラムについて解説します。まずは以下の仕様にしたがって、HTTPリクエストURLを設定します。

  • HTTPリクエストURL: https://api.twitter.com/1.1/statuses/update.json

 

次につぶやきたい文章をTextViewから取得します。ディクショナリの定数を使用してパラメータを設定します。

  • パラメータ「status」は必須。パラメータ「status」:ツイートする内容を設定する

 

「SLRequest」クラスを使ってつぶやきます。第1引数にTwitterでつぶやくので定数「SLServiceTyepTwitter」を指定、第2引数にPOSTメソッドを指定します。

  • POSTメソッドを使用する

第3引数、第4引数に上記で設定したURLとパラメータを指定します。

 

前回で取得したTwitterアカウントを設定します。

  • 取得したTwitterアカウントのデータを渡す

 

上記までのプログラムで最低限の設定はできたので、performRequestWithHandlerメソッドでTwitterでつぶやきます。

処理が完了すると変数responsData、urlResponse、errorが返ってきて正常につぶやけたのか?何らかの理由で失敗したのか?これらの変数でわかりますのでチェックを行っています。

エラーが発生した場合はエラーメッセージを、正常につぶやけた場合は返ってきたJSONデータをデバッグエリアに表示させています。

 

プログラムを実行してみる

上記のプログラムを実行すると、以下のようになります。つぶやきたいTwitterアカウントを選択して…

Simulator Screen Shot 2015.12.30 15.34.34

 

TextViewにつぶやきたいテキストを入力してTweetボタンを押すと…

Simulator Screen Shot 2015.12.30 15.34.57

 

Twitterにつぶやくことができました!お疲れ様でした!

スクリーンショット 2015-12-30 15.35.31

 

まとめ

前回とあわせてTwitterのプログラムを解説しました。次回はタイムライン取得のプログラムを解説します!

参考にTwitterアカウント取得とツイートする全プログラムを以下に記述します。

「ViewController.swift」

 

参考サイト

iOSアプリでTwitterのタイムライン取得・ツイート投稿を行う(Accounts.frameworkとSocial.rameworkを使って)

Swift 2を使うとNSJSONSerialization.JSONObjectWithData()でコンパイルエラー ‘Extra argument ‘error’ in call’ が発生する

[Swift] クロージャを利用したコールバックの書き方メモ

 

参考書籍

 

このブログは皆さんのお役に立てる内容を提供することを目指しています!少しでもお役に立てたら以下をクリックお願いします!

ブログランキング・にほんブログ村へ
にほんブログ村


人気ブログランキングへ

 

問い合わせなどはこちらからどうぞ

[contact-form-7 404 "Not Found"]