0

在我的项目中,我有 6 个活动和 4 个片段。其中只有 1 个没有使用互联网连接。所有的按钮,社交网络 api 的 bla bla bla 使用互联网。所以,如果我们算上,如果没有连接,至少有 60 行代码会给出致命错误。

对所有这些行使用 checkConnection 方法对我来说听起来很糟糕。所以,问题是;我应该如何以及在哪里使用这个连接检查器?谁有好的策略?

编辑:我的连接检查器非常简单。只需检查它何时被调用以及是否没有连接;说“没有连接”并返回以前的活动。

4

2 回答 2

1
public class ConnectionDetector {

    public static boolean isConnectingToInternet(Context _context){
        ConnectivityManager connectivity = (ConnectivityManager) _context.getSystemService(Context.CONNECTIVITY_SERVICE);
          if (connectivity != null)
          {
              NetworkInfo[] info = connectivity.getAllNetworkInfo();
              if (info != null)
                  for (int i = 0; i < info.length; i++)
                      if (info[i].getState() == NetworkInfo.State.CONNECTED)
                      {
                          return true;
                      }

          }
          return false;
    }

    public static boolean isConnectedToWIFI(Context context){
        ConnectivityManager connManager = (ConnectivityManager) context.getSystemService(context.CONNECTIVITY_SERVICE);
        NetworkInfo mWifi = connManager.getNetworkInfo(ConnectivityManager.TYPE_WIFI);

        if (mWifi.isConnected()) {
            return true;
        }
        return false;

    }
}
于 2013-09-02T13:00:58.237 回答
1

我会为任何 Web 基础端点使用包装器方法并在那里编写此代码,该方法应该向 UI 返回一个布尔值或枚举值,以便您处理这些情况并告诉用户有什么问题(比如没有连接,低连接等。)

于 2013-09-02T14:21:33.227 回答