连接
大多数连接网络的 Android app 会使用 HTTP 来发送与接收数据。Android 提供了两种 HTTP clients:HttpURLConnection 与 Apache HttpClient。二者均支持 HTTPS、流媒体上传和下载、可配置的超时、IPv6 与连接池(connection pooling)。推荐使用 HttpURLConnection。
可参考http://blog.youkuaiyun.com/mexican_ok/article/details/8925477
在一个单独线程中执行网络操作:使用 AsyncTask,不再多叙述了。
步骤:
- 建立连接
- 打开连接
- 获取 InputStream
- 解析(转换格式和 xml,json 解析)
http://hukai.me/android-training-course-in-chinese/connectivity/network-ops/connecting.html
检查网络连接
检查网络连接
ConnectivityManager connMgr = (ConnectivityManager)
getSystemService(Context.CONNECTIVITY_SERVICE);
NetworkInfo networkInfo = connMgr.getActiveNetworkInfo();
if (networkInfo != null && networkInfo.isConnected()) {
// fetch data
} else {
// display error
}
检查设备的网络连接类型(即 wifi 连接与手机数据连接)
更多的网络连接情况来源http://hukai.me/android-training-course-in-chinese/connectivity/network-ops/managing.html
内容包括(检查设备连接,管理网络使用情况(是否仅在 wifi 下上传下载)、响应设置、检测网络连接的变化,使用 XmlPullParser对xml 解析)