作成するフラグメントに問題があります
Context mContext = getActivity();
ネストされたフラグメント コンストラクターでは、長い間アプリを使用しなかった後、mContext はガベージ コレクションのように見え、アクティビティを再開すると値が null になりました。
フラグメントの onResume に mContext null チェックを入れることを考えていました。これがこのエラーを処理する最善の方法ですか。この問題は複数の場所で発生します。
作成するフラグメントに問題があります
Context mContext = getActivity();
ネストされたフラグメント コンストラクターでは、長い間アプリを使用しなかった後、mContext はガベージ コレクションのように見え、アクティビティを再開すると値が null になりました。
フラグメントの onResume に mContext null チェックを入れることを考えていました。これがこのエラーを処理する最善の方法ですか。この問題は複数の場所で発生します。
Activity
が表示されない場合、はそのライフサイクルActivity
のメソッドに移動し、OS が必要なときにいつでも OS によってガベージ コレクションを実行できます。onStop
Activity
Context
表示されていない後に依存するべきでActivity
はありません。
Context
を再開するときは常に新鮮なものを取得し、そもそも取得すべきでない場合はチェックにActivity
頼らないでください;-)NullPointer
NullPointer
http://developer.android.com/training/basics/activity-lifecycle/pausing.htmlとhttp://developer.android.com/training/basics/activity-lifecycle/stopping.htmlを参照してください。
編集:最後のリンクからの引用:
アクティビティが onStop() メソッドへの呼び出しを受け取ると、アクティビティは表示されなくなり、ユーザーが使用していない間は不要なほぼすべてのリソースを解放する必要があります。アクティビティが停止すると、システム メモリを回復する必要がある場合、システムはインスタンスを破棄する可能性があります。