ミラーサイト作りました。今後はそちらをメインにするかも知れません。よろしくお願いします。

あれこれ備忘録 〜はてなブログ支店〜

もしもドロップシッピング」で販売サイト作ってみました。
あれこれ商店

画期的な無料家計簿アプリでお金の流れが一目で分かる

2011年05月29日

twitter4jでtwitterアプリを作る

twitter4jというライブラリを使うとjavaで簡単にtwitterアプリを作れるということで試してみたのですが、去年の今頃にTwitterの認証の仕組みが変更されたので、参考にするネットの情報がそのまま使えないことが多くて(探し方が下手なのせいも大きいでしょう)、すぐに出来なかった。。。

一般のユーザのタイムラインを表示するだけなら特に認証はいらないのでネット上のソースがそのまま使えました。

Twitter4Jの使い方(開発メモ)

Twitter tw = new TwitterFactory().getInstance();



でインスタンスを作って

tw.getUserTimeLine("username");



でtwitter4jのstatus型のデータが入ったリストを得る。あとはそれを出力するなり、処理をする。

問題は自分のアカウントでログインしてタイムラインを参照したり、ツイートする場合。

これは一度Twitterサイトで自分のアプリを認証させないといけないらしい。

OAuth認証とxAuth認証の二つがあるようだけど、xAuthの方はサイトにアプリの登録手続きのあとさらにメールを送って許可を得ないといけないらしいのでOAuth認証にする。

すぐに認証できるので簡単なのだが、検索してみると個人の場合は自分のサイトや組織などは空欄でいいと書いてあるところもあるが、実際はサイトは入力しなくてはいけない

あと、Twittertwitterという文字はアプリの名前には含めてはいけない

検索でヒットするいくつかのサンプルにはクラス名がTwitterを含んでいることがあるからそのまま使って作ったプログラムを登録しようとすると引っかかる。


登録できたら、登録後のページにあるConsumer KeyConsumer Secretというところの暗号のような文字列をメモしておいて、つくろうとしているJavaアプリのソースに入力する。



しかし、この二つの値をどこに記録するかが面倒でした。

本家のサンプルコードのページにはその名のとおりサンプルのソースがある。

ただ、
サンプルコードを動作させるには OAuth の認証情報を twitter4j.properties 記載しておく必要があります。


と書かれてある。

別ファイルをテストの段階で作るのも面倒なので、ソースでこの二つを引数で渡せないかと思って別のサイトを検索してみると

Twitter4Jを使ったTwitterのOAuth認可サンプル(NI-Lab.'s ヅラッシュドット)が見つかった。

しかし、ここの

factory.getOAuthAuthorizedInstance(consumerKey, consumerSecret);



が今のtwitter4jには無いみたい。

どうするのかと思っていろいろ探したのだけど、結局、さっきの本家サンプルコードのページにOAuth認可のセクションがあって、

Twitter#setOAuthConsumer()を使うとありました。

いやあ、長かった。

結論としてはヅラッシュドットのサンプルのソースの

Twitter twitter = factory.getOAuthAuthorizedInstance(consumerKey, consumerSecret);





Twitter twitter = factory.getInstance();
twitter.setOAuthConsumer(consumerKey, consumerSecret);



に変更すればいいだけでした。

JavaDocをきちんと理解できればこんなことにはならないんですけどね。。。

とにかく表示はできたからよしとしよう。

GALAPAGOS SoftBank 005SH Twitterやブログが楽しい フルキーボード搭載 3D対応スマートフォン

30% off Twitterrific公認 twitter ツイッター フィギュア 白黒 リミテッド100個 全世界限定100個 レア ツイッターのAppで有名なTwitterrificのアイコンのフィギュアです。こちらの白黒バージョンは全世界100体限定となります。約10センチです。日本では手にすることが出来ない非常に珍しい品になります。

Twitter APIリファレンスガイドブック―Twitterアプリを開発する

カフス Twitter ツイッター ! カフスボタン 今話題のTwitterのロゴをあしらったカフリンクス

うーさー ダースウーサーTシャツ カリフォルニアオレンジ サイズ:L 「supercell」のメンバーにしてデザイナー 宇佐氏のマスコットキャラクター。Twitterタイムライン上に生息するが、その発言を見たものは数少ないといわれる謎の黒獣『ダースウーサー』をプリントした、宇佐氏によるデザインのTシャツ!
posted by まっさん at 16:38 | Comment(1) | java | このブログの読者になる | 更新情報をチェックする
この記事へのコメント
getOAuthAuthorizedメソッドの廃止など、最新バージョン移行にあたっての必要事項は公式サイトにまとまっているのでご参照ください。
http://twitter4j.org/ja/versions.html#migration21x-22x
Posted by 山本裕介 at 2012年12月26日 09:56
コメントを書く
お名前: [必須入力]

メールアドレス:

ホームページアドレス:

コメント: [必須入力]


iPagerank ブログランキング・にほんブログ村へ
にほんブログ村 ランキングはこちらをクリック!

×

この広告は1年以上新しい記事の投稿がないブログに表示されております。