Это зависит от того, где вы пытаетесь создать этот объект.Если вы не сделаете это в классе, который расширяет Context (например, Activity), он не должен работать.Вы можете попробовать такую конструкцию:
Есть два способа получить:
Более простой способ: объявить AsyncTask как внутренний класс внутри действия тура и ссылочный контекст, используя метку.Чтобы объявить класс внутренним, вам нужно поместить его в другой класс и добавить inner keyowrd:
class A {
inner class B
}
Теперь вы можете ссылаться на контекст внутри вашей асинхронной задачи следующим образом:
dbHelper = DbHelper([ActivityName]@this)
Тем не менее, это простой способ вызвать утечку памяти, вы можете прочитать больше здесь: Утечки памяти Android AsyncTask
Лучший способ - извлечь AsyncTask в другой класс ипередать ему контекст приложения вместо Activity.