連載
» 2011年02月08日 00時00分 UPDATE

クラウドとフレームワークで超簡単ケータイ開発(2):JavaでTwitterをOAuth認証して使えるTwitter4Jとは (1/3)

数年前に比べケータイ向けサービス構築を支援するフレームワークやノウハウがたまってきて、そして無料または、格安でサービスを公開できる仕組み(クラウドやVPSなど)も普及している今こそ、ケータイ向けサービス開発を始めるチャンスではないでしょうか

[森俊夫,@IT]

携帯端末は、何気なく“つぶやく”のに最適!

 前回の「Google App EngineとSlim3とMobyletで始める携帯Web入門」では、Javaのケータイ向けサービス開発を簡単にするクラウド環境とフレームワークなどを紹介し、開発環境を構築して動かしてみました。数年前に比べ、今ケータイ向けサービス構築が容易になっていることが確認できたかと思います。

 携帯端末は、いつでもどこでも触れるため、つぶやくためのデバイスとして最適です。そこで今回は、ケータイからTwitterを操作する機能を実装してみましょう。

TwitterにおけるOAuth認証の流れ

 Twitterと連携するアプリケーションを作成する場合、Twitterとアプリとユーザーの3者が、以下のフローで、OAuth認証を行う必要があります。

図1 Twitterとアプリとユーザーの3者間フロー 図1 Twitterとアプリとユーザーの3者間フロー
  1. ユーザーがWebアプリにアクセス
  2. アプリがTwitterから、Request Tokenを取得
  3. Twitterのユーザー認証ページにリダクレト
  4. ユーザーがTwitterにログインし、Webアプリを許可
  5. TwitterがAccess Tokenを発行し、Webアプリのページにリダクレト

 今回、Twitter連携するアプリはケータイ用Webアプリですが、PC上のWebブラウザでOAuth認証を行い、後述のAccessTokenを取得する必要があります。ケータイ用Webアプリでは、そのAccessTokenを使用してTwitterを連携します。そのため、今回は、OAuth認証用のWebアプリも作成します。

 またTwitterには、「xAuth」という認証方式も用意されています。この認証を使用すると、Webアプリ側でAccessTokenを取得でき、Twitterのページに遷移して、ユーザーに許可させる必要がありません(図1の3番と4番)。

 ただし、これをするためには、Twitterから許可をもらう必要があるため、今回は使用しません。OAuth認証の詳細については、以下の記事も参照してください。

r13ukn_bor_rou_sha_w400.jpg

Twitter APIを利用するための設定

 まずは、APIを利用するためのTwitterアカウントを作成しましょう。すでにアカウントを持っている方は、そちらをご利用ください。

 次回で、ツイート(※注意)した場所をGoogle MAPで表示させるために、ツイートに位置情報を付与するように設定しておきます。

※注意:ツイートとつぶやきの使い分けについてこの記事では、「ツイート」のメッセージを「つぶやき」として扱っていいます。

 Twitterにログインし、設定画面から、以下のように「あなたのツイートに位置情報を付与」のチェックボックスを選択して、保存してください。

図2 [Ant Input Request]ダイアログ 図2 Twitterアカウントでの設定

 次に今回作成する携帯サービスをTwitterに登録します。「Twitterアプリケーション」にアクセスしてください。

図3 絵文字が出ない…… 図3 [新しいアプリケーションを登録する]ボタンを押下

 [新しいアプリケーションを登録する]ボタンを押下すると、以下の画面になります。

図4 項目を入力して[アプリケーションを登録する]ボタンを押下 図4 項目を入力して[アプリケーションを登録する]ボタンを押下

 以下の項目を入力して、[アプリケーションを登録する]ボタンを押下してください。

  • [アプリケーションのウェブサイトURL]作成するサービスのURLを入力作成するサービスのURLを入力
  • [アプリケーションの種類]「ブラウザアプリケーション」を選択「ブラウザアプリケーション」を選択
  • [コールバックURL]
    OAuth認証時(後述)にコールバックされるURL。ソースコードからコールバックされるURLを指定できるため、ここでは「アプリケーションのウェブサイトURL」と同じURLを入力
  • [Default Access type]アプリケーションからツイートするため、「Read & Write」を選択アプリケーションからツイートするため、「Read & Write」を選択

 登録後、アプリケーションの詳細情報を確認し、「Consumer key」「Consumer secret」をメモしておきます。後ほど、Twitter認証に使用します。

Java用のTwitterライブラリ「Twitter4J」の設定

 本稿では、Java用のTwitterライブラリである「Twitter4J」を使って、Twitterからタイムラインを取得したり、つぶやいたりする機能を実装します。

r13c36_bor_rou_sha_w400.jpg

 Twitter4Jの設定を行いましょう。上記ページから最新版をダウンロードしてください(原稿執筆時の最新は「twitter4j-2.1.7-SNAPSHOT.zip」)。

 ダウンロードしたファイルを解凍し、「twitter4j-core-2.1.7-SNAPSHOT.jar」を「war/WEB-INF/lib」に配置し、ビルドパスを設定しておいてください。

 次ページ以降、このTwitter4Jを使って3つの機能を実装していきます。

       1|2|3 次のページへ

Copyright© 2017 ITmedia, Inc. All Rights Reserved.

@IT Special

- PR -

TechTargetジャパン

この記事に関連するホワイトペーパー

Focus

- PR -

RSSについて

アイティメディアIDについて

メールマガジン登録

@ITのメールマガジンは、 もちろん、すべて無料です。ぜひメールマガジンをご購読ください。