アクティビティ間のデータの取り扱いについての質問です
初回起動時にネットワークにアクセスしログインの必要があるアプリを作成しています
またアプリの起動時にアプリに必要なデータを全て読み込みグローバル変数としてアクセスしています

アクティビティのリストは以下の通りです。
A ログイン処理とデータの読み込みと作成
B メイン画面
C、D、E データが必要な画面

アプリ起動時にA→B→Cと起動し、アプリがタスクキルされた場合
Cからアクティビティが始まりnullポインタエクセプションが発生します。
そのため全てのアクティビティにグローバル変数のnullチェックを行う処理を挟み
nullの場合はアクティビティスタックをクリアしAから起動するようにしています

そもそもAndroidアプリでグローバル変数使用するのは良くないと言う内容の記事を読みました
例えばアクティビティ起動時にそのアクティビティが使用するデータのみ読み込むパターンも考えましたが
データの量が多く読み込みに時間がかかり操作性が悪い状態です
例えばTwitterの公式クライアントのようなアプリはどのような実装を行っているのか知りたいです