Cómo administrar adecuadamente contextos para una aplicación de Android (clases sin actividad)
Mensajes similares que no tienen la respuesta que estoy buscando.
Uso del contexto de la aplicación en todas partes?
- Android detectar si constructor llamado en modo de diseño?
- Werid ClassCastException en TreeMap.containsKey ()
- Cómo solucionar NetworkonMainThreadException en Android?
- Cómo manejar el evento de clic de niño en Expandablelistview en Android?
- Obtener código fuente HTML de codificado EditText en Android
http://developer.android.com/reference/android/app/Application.html
¿Forma estática de obtener 'Contexto' en Android?
¿Cuál es la diferencia entre los diferentes métodos para obtener un Contexto?
Descripción del problema:
Tengo un conjunto de clases de utilidad, algunas de las cuales escriben archivos. Otros pueden usar bases de datos, etc. El punto es que más de una de mis clases de utilidad necesitan Context s. Un ejemplo trivial es leer desde strings.xml a través de context.getString (r.strings.id).
Creo que en la mayoría de los casos me gustaría evitar singletons. A menos que sea absolutamente necesario iré con un singleton. Esto ha sido resuelto y publicado en uno de los enlaces. Yo personalmente los considero un patrón ati. Sólo una elección personal. Entiendo que el contexto de su aplicación por definición es un objeto singleton. Sólo hay una aplicación para cada contexto de aplicación. Estoy abierto a ir con la opción descrita anteriormente si es la única manera.
Pregunta:
¿Cómo pueden mis clases de utilidad obtener acceso a mi contexto de la aplicación de tal manera que simplemente puedo hacer nuevo MyContext (). Este contexto debe tener una referencia a los recursos de la aplicación. Creo que esto se llama applicationContext () cuando se llama desde una actividad. Idealmente esto sería una operación barata.
Gracias.
Editar: (aclaración) Estoy escribiendo un servicio al que se va a vincular una aplicación. Creo que esto no debería afectar la respuesta. Gracias de nuevo.
- Android: falló la conversión a formato Dalvik: no se pudo ejecutar dex: null
- Cómo agregar un contacto a un grupo android
- Obtener el elemento seleccionado de customadapter listview Android
- Robotium: ¿Cómo espero que termine la carga antes de continuar?
- FragmentMap + ActionBar Tab
- ¿Por qué los colores de los píxeles no son correctos en OpenGL ES 2.0 en Android?
- Pantalla completa DialogFragment se superpone con StatusBar
- JSONException: no hay valor para XYZ al intentar getString ("XYZ")
Creo que la forma más segura de hacerlo sería pasar la instancia de contexto a cada función que necesite acceso a los recursos, etc. Esta parece ser la práctica común que utiliza la API. Yo estaba realmente confundido en cuanto a por qué tantas funciones parecían haber requerido una instancia de contexto hasta que esto surgió.
- Cómo obtener el nombre de archivo y la extensión al abrir el archivo adjunto de correo electrónico
- El fondo del widget de Android no aparece, no responde