【发布时间】:2013-11-08 13:23:35
【问题描述】:
在我的应用程序中完全依赖于网络,即,我从网络获取数据(带文本的图像)并仅显示在我的布局中。为此,我的主要问题是如何处理网络连接。我使用以下代码检查设备是否已连接到网络。
public static boolean hasConnection() {
ConnectivityManager cm = (ConnectivityManager) MbridgeApp.getContext().getSystemService(
Context.CONNECTIVITY_SERVICE);
NetworkInfo wifiNetwork = cm.getNetworkInfo(ConnectivityManager.TYPE_WIFI);
if (wifiNetwork != null && wifiNetwork.isConnected()) {
return true;
}
NetworkInfo mobileNetwork = cm.getNetworkInfo(ConnectivityManager.TYPE_MOBILE);
if (mobileNetwork != null && mobileNetwork.isConnected()) {
return true;
}
NetworkInfo activeNetwork = cm.getActiveNetworkInfo();
if (activeNetwork != null && activeNetwork.isConnected()) {
return true;
}
return false;
}
- 这段代码提供了有关设备是否连接到网络的信息。
- 我的问题会出现,有时网络连接了但信号强度太低,这种情况我的应用程序需要更多时间(从 API 获取数据),长时间后应用程序冻结或崩溃。
- 是否可以设置信号强度的最小范围,如果低于该范围,我只是将 toast 消息通知给用户。
【问题讨论】:
-
见我的answer,也许它可以帮助你。
标签: android networking