FabricでTweetする時に分からなかったこと(Android)
せっかっくの休みなので、何かしようかと思い立ち、Android Studioを使ってTweetするアプリを作ってみた。
ほとんど↓の通りで良かったのだけど、肝心の投稿の部分がうまくいかなかった。
Android StudioとFabricでTweetする - Qiita
どうも、FabricのバージョンアップでStatusesServiceのupdateメソッドが変わってしまったらしい。適当にググってみても日本語のページが見つからず少し苦労した。最終的には↓を参考にして、適当にやったらうまくいったので備忘録としておく。
MediaService success to upload, but nothing show in the timeline - Twitter - Twitter Developers
レトロフィットRetrofitが必要なので、build.gradleに↓を追加して。
compile 'com.squareup.retrofit2:retrofit:2.1.0'
本体は↓の様に改変した。
private void tweet(String message) {
TwitterApiClient twitterApiClient = TwitterCore.getInstance().getApiClient();
StatusesService statusesService = twitterApiClient.getStatusesService();
Call<Tweet> call = statusesService.update(message, null, false, null, null, null, false, false, null);
call.enqueue(new Callback<Tweet>() {
@Override
public void success(Result<Tweet> result) {
Toast.makeText(getApplicationContext(), "post success", Toast.LENGTH_LONG).show();
}
public void failure(TwitterException exception) {
Toast.makeText(getApplicationContext(), "post fail", Toast.LENGTH_LONG).show();
Log.d(TAG, exception.toString());
}
});
}