I have an Android application composed by several Activities. Most of them need to check whether an active network is available or not:
public boolean isNetworkAvailable() {
ConnectivityManager cm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
TelephonyManager tm = (TelephonyManager) getSystemService(Context.TELEPHONY_SERVICE);
...
}
I would like to move that code to a helper class in order to avoid the need to write that code in every Activity, but calls to getSystemService
are only allowed from an Activity.
The other alternative is to move that code to a parent activity use inheritance but:
- Every activity already extends from android.app.Activity
- Some of my activities already extend from a common my.package.BaseActivity (Activity <- BaseActivity <- XXXActivity)
so I don't like this idea very much.
What do you recommend in this case? Is there any other alternative?