Как использовать класс databasehelper в классе asynctask, работающем в другом классе
Привет всем, кто застрял на месте, проблема в том, что у меня есть три класса, показанные ниже, и я хочу создать экземпляр моего класса DatabaseHelper в классе AsyncTask. Не могли бы вы помочь, как я могу получить контекст в классе AsyncTask?
Задача решена
MainActivity class
public class MainActivity extends Activity {
...
FetchData fetchData = new FetchData();
fetchData.execute();
...
}
DatabaseHelper
public class DatabaseHelper extends SQLiteOpenHelper {
....
public DatabaseHelper(Context context) {
super(context, DATABASE_NAME, null, DATABASE_VERSION);
....
}
Класс FetchData
public class FetchData extends AsyncTask<String, String, String> {
....
DatabaseHelper db = new DatabaseHelper(); //need context here!!!
....
}
#Благодаря Kasra я создаю четвертый класс и использую его в MainActivity перед вызовом AsyncTask
Класс ContextStatic
public class ContextStatic {
private static Context mContext;
public static Context getmContext() {
return mContext;
}
public static void setmContext(Context mContext) {
ContextStatic.mContext = mContext;
}
}
Обновлен класс MainActivity
public class MainActivity extends Activity {
...
ContextStatic.setmContext(this);
FetchData fetchData = new FetchData();
fetchData.execute();
...
}