I am currently trying to call a method from a utility class that will reference a new cursor created for this utility method. Unfortunately, my new class will not let me create the cursor without context. I have tried numerous ways of passing context from the calling activity, but get null pointer exceptions in most cases.
Here is the portion of my code:
findViewById(R.id.button).setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
Tools.pickRandomItem();
}
});
and in the Tools Class:
public static void pickRandomItem() {
Cursor cur = getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null,
null, null,MediaColumns.TITLE + " ASC");
}
Using the above code it throws an error on getContentResolver(), and all attempts I’ve made to pass context have failed.
I am fairly new to programming for Android, and don’t fully understand the concept of contexts. Any help you could provide would be greatly appreciated!
Create a class that extends Application for your project (you have to declare it in the Manifest too), in the Application make a
in the onCreate() of it assign it to the field
and make a
in it. When you need a Context you can use a