android - solucion - No se puede hacer una referencia estática al método no estático getSystemService(String) del tipo
non-static method php (3)
getSystemService
es un método no estático de la clase Context
, por lo que para acceder a él necesitas un objeto de la clase Context. Típicamente lo llamas desde dentro de Activty donde this
también es un objeto de Context
. Para solucionarlo, puede pasar un contexto a su método isNetworkConnected
Tengo esta función qué conexión de red
public boolean isNetworkConnected() {
ConnectivityManager conManager = (ConnectivityManager)getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = conManager.getActiveNetworkInfo();
if (netInfo == null) {
// There are no active networks.
return false;
} else {
return true;
}
}
Pero cuando trato de hacerlo estático para que pueda usarlo en cada actividad que está lanzando:
No se puede hacer una referencia estática al método no estático getSystemService (String) del tipo
No quiero crear el objeto de la clase todo el tiempo.
Agregue las dependencias no estáticas como parámetros:
public static boolean isNetworkConnected(Context c) {
ConnectivityManager conManager = (ConnectivityManager) c.getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo netInfo = conManager.getActiveNetworkInfo();
return ( netInfo != null && netInfo.isConnected() );
}
ahora podemos usar la función estática getContext()
para obtener el contexto que hereda de Cocos2dxActivity.java