private static class OpenHelper extends SQLiteOpenHelper {
OpenHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}}
タイプの意味がわかりませんContext
。マニュアルを読みましたが理解できません。
private static class OpenHelper extends SQLiteOpenHelper {
OpenHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
}}
タイプの意味がわかりませんContext
。マニュアルを読みましたが理解できません。
コンテキストはインターフェースです!
ソースコードによると:
アプリケーション環境に関するグローバル情報へのインターフェース。これは抽象クラスであり、その実装はAndroidシステムによって提供されます。これにより、アプリケーション固有のリソースとクラスへのアクセス、およびアクティビティの起動、インテントのブロードキャストと受信などのアプリケーションレベルの操作のアップコールが可能になります。
理解を深めるには、 http: //grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/4.0.4_r1.2/android/content/Context.java#Contextを参照してください。
Context
データベースオブジェクトが作成されるアクティビティのコンテキストを指します。
データベースSampleClass
にアクセスしたいアクティビティとします。
SampleClass.thisは、そのコンストラクターへの引数になります。
Context
、提供先SQLiteOpenHelper
は、データベースパスを取得するために(とりわけ)使用され、呼び出します
context.getDatabasePath();
したがって、このトピックで説明されているように、カスタムコンテキストの実装を渡す唯一の理由は、データベースの場所をオーバーライドすることです:https ://stackoverflow.com/a/9168969/716075