[{PageViewPlugin}]
[Emergency Situation Sharing Tool]
!!!Abstract
This sample application seems to provide various good functions such as real time tweet search and notification. They should be studied.
!!!Topics
Target->[1]
!!全般
*サポート
|このサンプルは、Twitter社の公式なものであるが、サポートをやめるというアナウンスが。。。[2]
*スタート画面はどこだ?→TwitterSampleActivity.java
*Notification、Leaksってなんだ。
|SampleApplication.javaでLeakCanary.install(this);って発見。どうもメモリリークを探すプログラムらしい。
!!認証
*Oauth→TwitterCoreMainActivity.java
|これはいつOauthしてるんだろう。[GMAILの時|Send Message by Gmail in Android]のように[Android]のAccoutManagerを使っているのか?TwitterAuthClientというのを使っているようだが。。 Twitter.initialize(this);はSampleApplication.javaで実行している。
|app/twitter.propertiesを呼び出すのはいつ?gradleに記述されているように見える。ESSTが使っているkeyを確認したほうがいい。
!!Search Tweet
|いろいろとTweetを取りに行くのにも種類がある。
|Oauthとはどういう関係か?
*TimelineActivity
|だれのTweetを持ってきているのか?なんかゲストユーザで#twitterでの検索範囲を表示しているように見える。もしかしてOauthしなくても取得できるTweetがあるのか?
|com.twitter.sdk.android.tweetuiパッケージのSearchTimelineクラスをどう使うかがキーっぽい。これは、最終的にはどこにライブラリがあるのか?->MAVENのレポジトリにちゃんとありそう。ってESSTですでに使っている。
|listviewにTweetTimelineListAdapterをセットしているところまでわかるが、どこでTweetを検索しているんだろう。そうだscreenname変えてみよう。
|サンプルアプリ動かしてもSearchTimelineは動いていないように見える。UserTimelineFragment.javaのUserTimelineクラスを調べよう。
*UserTimelineFragment
|UserTimelineのBuilderのスクリーンネームをyurekuruにすると結構出てくる。これをESSTに適用したい。アダプターをセットしてから何をしたらいいかわからない。。。何をキックに探しに行くんだろう。Listに追加する動作はどう記述するのか?
ちなみにFragmentにadapterをセットする瞬間は、サイズ0.別スレッドで下記のStatusesServiceのGETコマンドが発信され、受け取ってからこのアダプター経由で設定するのだろう。そのタイミングはいつだ。。どう捕まえればいいのか。
*StatusesService
|StatusesServiceというインタフェースがある。この中で以下のGETコマンドが発信されている。
{{{
D/OkHttp: --> GET https://api.twitter.com/1.1/statuses/user_timeline.json?tweet_mode=extended&include_cards=true&cards_platform=TwitterKit-13&screen_name=nasa&count=30&trim_user=false&exclude_replies=true http/1.1
}}}
|UserTimeline.createUserTimelineRequest()でgetStatusesService()が呼び出されている。このリクエストの帰りにTweetのリストがあるように見える。どこから呼ばれるのか?検索かけてもUserTimelineからしか呼ばれていないように見える。このcreateUserTimelineRequest()はprivateメソッド。
!!!References
#[#1]Twitter, Inc., 2018年5月あたり, Twitter Kit for Android, [https://github.com/twitter/twitter-kit-android]
#[#2]Neil Shah, 2018年10月30日, Discontinuing support for Twitter Kit SDK, [https://blog.twitter.com/developer/en_us/topics/tools/2018/discontinuing-support-for-twitter-kit-sdk.html]