iOSでは、単一のUIViewControllerを使用してアプリケーション全体を記述し、UIView階層内にアプリケーション全体を単純に追加することができます。メモリ状況が悪いときにUIViewControllerが通知を受け取るので、これは正常です。開発者は手動でメモリ管理/最適化を行うことができます。単一アクティビティ、複数のフラグメントに基づくAndroidアプリケーション
Androidにこれに相当するものはありますか?
1つのアクティビティにアプリケーション全体を書き込み、これにフラグメントをスタックすることはできますか?
これは、私が理解するところではメモリ使用量にどのような影響がありますか?これはアクティビティのライフサイクル管理を迂回し、フラグメント全体がメモリに残るか、間違っていますか?
N個のアクティビティによってホストされている場合は、アクティビティのライフサイクル管理の一部になります。それらがすべて単一のビューにある場合、これは単一のアクティビティが唯一可視であるため、すべてのフラグメントとともに常にメモリ内にあることを意味しません – user204884
@ user204884:アクティビティは、手動で 'finish()'するか、またはユーザがBACKを押した場合(通常のBACKボタン処理を許可する場合)、処理が終了します。したがって、デフォルトでは、1つのアクティビティに対してN個のアクティビティを持つことは、フラグメントに関して同じメモリフットプリントを持つことができます。 N個のアクティビティ*を持つことでメモリフットプリントを減らすことはできますが、それは保証されません。私の答えでそれをより明確にしていないことに対する私の謝罪。 – CommonsWare
@CommonsWare私はあなたの答えを受け入れるが、メモリをクリアするためにそれらを保持しているアクティビティとともに、すべてのフラグメントを時間通りに削除する方法を受け入れる。すぐにメモリをクリアするか、それとも時間がかかりますか? – TNR