私はフラグメントに取り組んでいて、数回使用されるActivity
とFragmentActivity
の2つのことに出会いました。 Activity
をFragmentActivity
に変更したとき、アプリには影響がなかったため、これら2つの間に違いがあることを知りたいと思います。
FragmentActivity
は、 Androidサポートパッケージ 向けに構築されたActivity
のサブクラスです。
FragmentActivity
クラスには、Androidの古いバージョンとの互換性を確保するためのいくつかの新しいメソッドが追加されていますが、それ以外は、実際には2つの間に大きな違いはありません。必ずgetLoaderManager()
とgetFragmentManager()
へのすべての呼び出しをそれぞれgetSupportLoaderManager()
とgetSupportFragmentManager()
に変更してください。
FragmentActivity
は サポートライブラリ の一部ですが、Activity
はフレームワークのデフォルトクラスです。それらは機能的に同等です。
プラットフォームのデフォルトのFragmentActivity
クラスとAndroid.support.v4.app.Fragment
クラスの代わりに、常にActivity
とAndroid.app.Fragment
を使用する必要があります。プラットフォームのデフォルトを使用するということは、実行中のデバイスで使用されるフラグメントの実装に依存していることを意味します。これらは多くの場合数年前のものであり、サポートライブラリで修正されたバグが含まれています。