在android中检查Internet状态

时间:2017-11-03 05:09:49

标签: android android-layout internet-connection

在我的Android应用程序中,我使用了很多AsyncTasks。我想在运行每个异步任务时检查互联网连接。我可以创建一个公共类和公共xml布局来显示“无连接”而不是检查每个AsyncTasks执行?

1 个答案:

答案 0 :(得分:0)

只需创建一个错误布局并将其包含在每个xml中。或者在运行时根据需要添加它。

 <include
    android:id="@+id/error_view"
    layout="@layout/view_error"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:layout_centerHorizontal="true"
    android:visibility="gone" />

在任何连接错误上,使用指定的消息显示错误。也可以是重试按钮。 根据可用连接切换错误视图的可见性。检查网络连接: -

 public static boolean isNetworkConnected(Context context) {
    ConnectivityManager cm = (ConnectivityManager) context.getSystemService(Context.CONNECTIVITY_SERVICE);
    NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
    if (null != activeNetwork) {
        if (activeNetwork.getType() == ConnectivityManager.TYPE_WIFI)
            return true;
        if (activeNetwork.getType() == ConnectivityManager.TYPE_MOBILE)
            return true;
    }
    return false;
}