Sé que el uso de variables estáticas en Android es bastante arriesgado, especialmente si los referencia a actividades. Sin embargo, si tengo una clase que extienda la Aplicación (llamemos a esta clase "Aplicación"), ¿es seguro hacer referencia a la instancia de esta clase?¿Es seguro guardar el contexto de la aplicación en una variable estática en Android?
Si es así, ¿también es seguro para cualquier otra clase tener algún tipo de referencia en el contexto de la aplicación? Quiero decir, ¿puede haber una pérdida de memoria si tengo una referencia al contexto de la aplicación en cualquier clase de clase?
El propósito es que no importa en qué alcance me encuentre, siempre puedo obtener una referencia al contexto de la aplicación. Creo que es seguro, ya que si el sistema cierra la aplicación, la variable estática también se va hasta la próxima vez que la aplicación se inicia nuevamente, lo que inicializará la variable estática nuevamente.
Además, no es que importe demasiado, pero si utilizo procesos múltiples, ¿obtendré referencias totalmente diferentes a la clase de la aplicación en cada proceso?
Como ejemplo de código, esto es lo que estoy pensando:
public class App extends Application
{
private static Context _appContext;
@Override
public void onCreate()
{
super.onCreate();
_appContext = this;
}
public static Context getAppContext()
{
return _appContext;
}
}
duplicado? https://stackoverflow.com/questions/2002288/static-way-to-get-context-on-android –
@YoushaAleayoub No. La pregunta es si es seguro. No si es posible y cómo hacerlo. Ya he demostrado cómo hacerlo. –