如何理解“上下文”类型?

时间:2012-08-09 09:14:44

标签: android sqlite android-context

private static class OpenHelper extends SQLiteOpenHelper {
    OpenHelper(Context context) {
    super(context, DATABASE_NAME, null, DATABASE_VERSION);
}}

我无法理解Context类型的含义。我阅读了手册,但无法理解。

3 个答案:

答案 0 :(得分:2)

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以获得最佳理解

答案 1 :(得分:0)

Context指的是创建数据库对象的活动的上下文。

SampleClass成为您要访问数据库的活动。

SampleClass.this将是该构造函数的参数。

答案 2 :(得分:0)

提供给Context

SQLiteOpenHelper用于(以及其他)获取数据库路径,调用

context.getDatabasePath();

因此,传递一些自定义上下文实现的唯一原因是覆盖数据库位置,如本主题中所述:https://stackoverflow.com/a/9168969/716075