オープンソースのTwitterクライアントAndTweetのソースコードをダウンロードしてビルドする
AndroidでTwitterクライアントアプリを作る参考にするために、AndTweetというオープンソースのTwitterクライアントをダウンロードして、ビルドする。
AndTweet(オープンソースのTwitterクライアント)
1.AndTweetのソースコードをダウンロードする
(1) 以下のサイトからソースコードをチェックアウトする。
Source Checkout - andtweet - Light-weight Android Twitter client - Google Project Hosting
(2) Mercurialでクローンを作成
hg clone https://andtweet.googlecode.com/hg/ andtweet
Mercurialは使ったことがなかったので、以下のサイトからダウンロードした。
Windows版のMercurial-1.8.3 (32-bit msi)
すべてデフォルトの設定でインストール終了。コマンドプロンプトで「hg」と入力して、ヘルプ画面が出てきたら成功。上記のhgコマンドを実行する。
2.TwitterでOAuth認証用のカスタマーキー、カスタマーシークレットを申請する
OAuth認証というのは、パスワードがアプリ作者に漏れないようにするための仕組み。パスワードをアプリ内に保持しておいてTwitterにPOSTするのではなく、Twitter側で用意したURLにIDとパスワードを入力して認証する。アプリがTwitterにアクセスする際は、認証のときに発行された認証コードを使用する。OAuthの概念を理解するには、以下のサイトが参考になる。
OAuth 2.0でWebサービスの利用方法はどう変わるか @IT
Twitterの認証コード(カスタマーキーとカスタマーシークレット)を取得するために、http://twitter.com/oauth_clientsにアクセスして必要事項を入力する。アプリケーションのURLの欄は、まだ取得していないURL(実在しないURL)でも大丈夫だった。
3.AndTweetをeclipseでビルドする
eclipseでプロジェクトをインポートしてビルドすると、OAuthKeysクラスでビルドエラーが出る。OAuthKeys.javaを開いてみると、以下のようにコメントに、カスタマーキーとカスタマーシークレットをフィールドに持つMyOAuthKeysクラスを作成するように書かれている。
// OAuthKeys.java package com.xorcode.andtweet.net; /** * In order to compile the application you either: * 1. Create your own MyOAuthKeys class with your application's * TWITTER_CONSUMER_KEY and TWITTER_CONSUMER_SECRET * 2. Or remove "extends MyOAuthKeys" below and un-comment the values here * replacing values with your own token and key. **/ public class OAuthKeys extends MyOAuthKeys { // public static final String TWITTER_CONSUMER_KEY = "Your Twitter Application Token"; // public static final String TWITTER_CONSUMER_SECRET = "Your Twitter Application Secret"; }
なので、MyOAuthKeysクラスを作成する。これでビルドは成功する。
package com.xorcode.andtweet.net; public class MyOAuthKeys { public static final String TWITTER_CONSUMER_KEY = "XXXXXXXXXXXXXXXXXXXXXX"; public static final String TWITTER_CONSUMER_SECRET = "XXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXXX"; }