16
public void onProviderDisabled(String provider) {
    Toast.makeText(getApplicationContext(), "Gps Disabled", Toast.LENGTH_SHORT);


}

So this is what I have, and it shows an error and tells me The method getApplicationContext() is undefined for the type MyLocationListener

what should I do to avoid this error

john parker
  • 277
  • 2
  • 5
  • 10

4 Answers4

33

Since you aren't in an Activity you need to pass a Context to the class. Wherever you instantiate this class pass your Activities context

MyClass myClass = new MyClass(this);

Then create a constructor in that class that accepts Context as a param and use that

public class MyClass {
    Context c;
    public MyClass(Context context) {
         c = context;
     }
}

then when you need to use it

public void onProviderDisabled(String provider) {
    Toast.makeText(c, "Gps Disabled", Toast.LENGTH_SHORT);
}
codeMagic
  • 44,229
  • 13
  • 74
  • 91
2

this worked for me

public class MyClass extends Activity

Abhay Kumar
  • 4,318
  • 1
  • 14
  • 21
1

if you are using ContentProvider try this

getContext()
Sujith Manjavana
  • 2,482
  • 4
  • 30
  • 47
1

I resolve this by extending Application class, my class is AppController:

public class AppController extends Application{
    ...
}
OneCricketeer
  • 151,199
  • 17
  • 111
  • 216