Android 通信与网络技术全解析
1. 网络连接检测
在进行网络操作时,首先需要确保设备能够正常连接到网络。一种有效的方法是尝试打开一个到 Google Public DNS(8.8.8.8)的套接字,并设置 5 秒的超时时间。如果连接成功,就可以相对有信心地认为设备能够访问任何活跃的互联网资源。与直接尝试完全连接到远程服务器相比,这种方法的优势在于它能更快地判断连接情况,最多只产生 5 秒的延迟,就能告知用户他们实际上并没有所认为的网络连接。
当网络请求失败时,调用可达性检查并通知用户由于缺乏连接而导致请求失败是一种良好的做法。以下是一个示例代码:
try {
//Attempt to access network resource. May throw
// HttpResponseException or some other IOException on failure
} catch (Exception e) {
if( !isNetworkReachable() ) {
AlertDialog.Builder builder =
new AlertDialog.Builder(context);
builder.setTitle("No Network Connection");
builder.setMessage("The Network is unavailable."
+ " Please try your request again later.");
超级会员免费看
订阅专栏 解锁全文
6518

被折叠的 条评论
为什么被折叠?



