1、获取栈顶Activity
public static String getTopActivity(Context context) {
android.app.ActivityManager manager = (android.app.ActivityManager) context.getSystemService(context.ACTIVITY_SERVICE);
List<ActivityManager.RunningTaskInfo> runningTaskInfos = manager.getRunningTasks(1);
if (runningTaskInfos != null) {
return (runningTaskInfos.get(0).topActivity).toString();
} else
return null;
}
注:1、获取到的string字符串,包含的是 com.a.Activity,所以,拿到这个字符串以后,要判断当前activity是否是处于栈顶,需要用 contains方法
2、加权限:<uses-permission android:name="android.permission.GET_TASKS" />
2、判断有无网络
// 是否有网络,包括2g,3g.wifi
public static boolean isNetActive() {
boolean flag = false;
ConnectivityManager manager = (ConnectivityManager) UIUtils.getContext().getSystemService(Context.CONNECTIVITY_SERVICE);
if (manager.getActiveNetworkInfo() != null) {
flag = manager.getActiveNetworkInfo().isAvailable();
}
return flag;
}