Android对网络编程提供3中接口,即:Java接口,Apache接口,Android接口。Android提供了对HTTP,SSL,Cookie,DHCP等协议的封装,并支持套接字编程,同时对UTI也提供了支持。另外,还提供了连接管理器和WiFI管理器来增强对网络的支持。

1、HTTP协议:
Android中HTTP协议的主要体现在android.net.http和org.apache.http等包中。在android.net.http包中,主要通过AndroidHttpClient来实现HTTP协议,AndroidHttpClient实际上就是实现了org.apache.http.client.HttpClient,实际上就是DefaultHttpClient的子类,通过AndroidHttpClient newInstance(String userAgent, Context context)方法获得一个实例。其能够处理Cookie,但是在默认情况下无法维护Cookie,设置Cookie的方法:
context.setAttribute(ClientContext.COOKIE_STORE,cookieStore);
AndroidHttpClient通常和HttpHost、HttpUriRequest、HttpContext、ResponseHandler一起发起HTTP请求以及处理服务器响应。
2、SSL协议:
针对Web的网络安全协议,常见的HTTPS链接就采用了SSL技术,SSL协议的实现与数字证书密切相关。在android.net.http包中提供了SslCertificate和SslError来描述X509数字证书信息。在WebView中通过getCertificate()方法可以 查看当前页面是否拥有SSL证书。
3、Cookie实现:
Cookie用于识别用户信息,进行Session跟踪而存储在用户本地终端的数据,Cookie拥有自己的生命周期,可以存储用户信息,因此可能暴露用户信息,使用Cookie具有一定风险。Android中,Cookie的管理主要位于WebView,java.net,org.apache.http.cookie中,可以通过httpClient.getCookieStore().getCookies()来或得Cookie,使用Cookie的相关方法可以获得Cookie的信息。在WebView中,CookieManager可以用来设置、清除和获取Cookie。清空Cookie的方法CookiewManager.getInstance().removeAllCookie();
另:Cookie的信息保存在data\data\com.android.browser\databases目录下的webview.db中。
4、连接性管理:
Android通过ConnectivityManager提供对网络如WiFi,UMTS,GPRS的连接性管理。通过ConnectivityManager。getActiveNetworkInfo()方法可以获得介入方式,判断网络类型和当前状态。需要有权限android.permission.ACCESS_NETWORK_STATE.当网络发生变化时,系统会广播Action为android.net.conn.CONNECTIVITY_CHANGE的Intent消息。
5、WiFi管理:
对WiFi的管理,Android提供了WifiManager来进行管理。获取WiFi服务的的方法,context.getSystemService(WIFI_SERVICE);通过该服务可以获得设备可用网络的列表,获得当前激活网络的信息,执行热点扫描,测定信号强度等等。其具体方法可以自行查看API。Android4.0开始支持WiFi点对点的通信,获得WifiP2pManager服务的方法如下:
WifiP2pManager p2pManager = (WifiP2pManager) getSystemService(WIFI_P2P_SERVICE);
为了进行点对点同学需要下面几个步骤:
①通过initialize()初始化P2P连接
②通过discoverPeers()发现附近的设备
③通过connect()启动P2P连接。


更多相关文章

  1. Android NullPointerException解决方法
  2. 【原创】Android锁定横竖屏、splash,全屏、去除标题的方法
  3. Android基于TextView属性android:ellipsize实现跑马灯效果的方法
  4. Android离线安装方法
  5. 丢失Android系统库或者Conversion to Dalvik format failed with
  6. Android常用框架----网络请求系列框架

随机推荐

  1. Day1.5--Android简介之初识Activity
  2. Android——转屏时禁止调用onCreate()
  3. android binder机制(一)
  4. [转]android的Goldfish内核概述
  5. [原]采用MQTT协议实现Android消息推送
  6. 【android】五种控制Android应用的权限的
  7. Android类库常用类型解析
  8. Android(安卓)之 Bluetooth
  9. Android记事本NotePad应用功能拓展(六)
  10. Android(安卓)下使用 JSON 实现 HTTP 请