¿Cómo llamar al método de otra clase sin pasar el contexto?

Actualmente estoy tratando de llamar a un método de una clase de utilidad que hará referencia a un nuevo cursor creado para este método de utilidad. Desafortunadamente, mi nueva clase no me deja crear el cursor sin contexto. He intentado varias maneras de pasar el contexto de la actividad que llama, pero consigo las excepciones del puntero nulo en la mayoría de los casos.

Esta es la parte de mi código:

findViewById(R.id.button).setOnClickListener(new View.OnClickListener() { public void onClick(View v) { Tools.pickRandomItem(); } }); 

y en la Clase Herramientas:

  public static void pickRandomItem() { Cursor cur = getContentResolver().query(MediaStore.Audio.Media.EXTERNAL_CONTENT_URI, null, null, null,MediaColumns.TITLE + " ASC"); } 

Usando el código anterior lanza un error en getContentResolver() , y todos los intentos que he hecho para pasar contexto han fallado.

Soy bastante nuevo en la programación para Android, y no entiendo completamente el concepto de contextos. ¡Cualquier ayuda que usted podría proporcionar sería apreciada grandemente!

Cree una clase que extienda la Aplicación para su proyecto (también tiene que declararlo en el Manifiesto), en la Aplicación haga una

 private static MyApplication app 

en el onCreate () de lo asigna al campo

 app = this; 

y hacer una

 public static MyApplication get() 

en eso. Cuando necesitas un Contexto, puedes usar un

 MyApplication.get() 

Algunas pistas sobre Contexto:

  1. Obtener el contexto en usted Ver a través de getContext() y pasarlo a getContentResolver(context) .

  2. Utilice el enfoque de contexto de aplicación como se describe aquí por @apps.

  3. No almacene el contexto dentro de Actividad o Vistas. Esto conduce a fugas de memoria .

  • Android - Cómo utilizar ORMLite dbhelper para todo el ciclo de vida de la aplicación
  • Diferencia entre el uso de Contexto y getactivity en fragmento?
  • Android DataBinding dónde obtener el contexto?
  • ¿Cómo mostrar AlertDialog en un fragmento?
  • Corregir el contexto para usar en las devoluciones de llamada
  • Pasando referencia a la actividad a la clase de utilidad android
  • ¿Por qué ContextThemeWrapper está ahora restringido al grupo Support Library?
  • Toast.makeText (...) .show () es a veces mal alineado
  • Tostada en AsyncTask en la clase Non Activity
  • "Tostar" un mensaje a través de TimerTask
  • NullPointerException en android.content.ContextWrapper
  • FlipAndroid es un fan de Google para Android, Todo sobre Android Phones, Android Wear, Android Dev y Aplicaciones para Android Aplicaciones.