質問: new RealmConfiguration.Builder().build(); Realm.setDefaultConfiguration(realmConfig); } Realm初心者です このクラスは Realm データベースの設定と本に書かれていますがわからないことがあるので教えていただきたいです Realm.init(this),,はRealmの初期化をしていると本に書かれていますが 「初期化」とは何かわかりません なぜ必要なのでしょうか? また どういうプログラムを作る際に「初期化」が必要なのでしょうか? Realmだけでしょうか? また この設定を行うコードはMainActivity とは別に書いている理由はなんでしょうか? Application を継承したクラスのonCreate メソッドはこのアプリの実行開始時にアクティビティよりも先に呼ばれるとかかれていますが LAUNCHER のアクティビティよりも そのonCrete メソッドが先に呼ばれるということですか? なぜApplicationをつかうのでしょうか? また Manifest.xmlに
回答: 初期化とはライブラリやクラスを使用可能な状態にすることです。プログラムによってどのような初期化をするかは変わります。 Realmではthis(Applicationインスタンス)を渡すことで、データベースやテーブルの作成等を行なっていると考えられます。 また、Androidでは複数のActivityをLAUNCHERとして設定できるため、全てのActivity起動より先に実行されるApplication#onCreateに初期化処理を記述するのが妥当です。 マニフェストに記述を追加するのはアプリケーションがデフォルトでApplicationクラスになっているのを、プログラマーが実装したApplicationクラスを継承したクラスに再設定するためです。