第12章 Android 通信业务开发.docx
- 文档编号:1488363
- 上传时间:2022-10-22
- 格式:DOCX
- 页数:26
- 大小:258.10KB
第12章 Android 通信业务开发.docx
《第12章 Android 通信业务开发.docx》由会员分享,可在线阅读,更多相关《第12章 Android 通信业务开发.docx(26页珍藏版)》请在冰豆网上搜索。
第12章Android通信业务开发
第12章Android通信业务开发
主要内容:
WiFi、短消息、电话、上网
重点:
WiFi、短消息、电话、上网
难点:
WiFi、短消息、电话、上网
授课时数:
2课时+2课时
授课方式:
讲授、演示、实验
新课内容:
WiFi是一种无线联网技术,比较常见的就是通过无线路由器来连接网络。
在无线路由器的信号能够覆盖到的区域内,我们都可以通过WiFi连接网络。
而如果无线路由器连接了ADSL线路或其他的联网线路,则它还被称作“热点”。
Android为WiFi编程提供了一些重要的包,这些包在.wifi包下面。
主要包括以下几个类和接口:
1、canResult
主要用来描述已经检测出的接入点,包括接入点的地址,接入点的名称,身份认证,频率,信号强度等信息。
2、WifiConfiguration
Wifi网络的配置,包括安全设置等。
3、WifiInfo
wifi无线连接的描述,包括接入点,网络连接状态,隐藏的接入点,IP地址,连接速度,MAC地址,网络ID,信号强度等信息。
这里简单介绍一下这里的方法:
getBSSID()获取BSSID
getDetailedStateOf()获取客户端的连通性
getHiddenSSID()获得SSID是否被隐藏
getIpAddress()获取IP地址
getLinkSpeed()获得连接的速度
getMacAddress()获得Mac地址
getRssi()获得802.11n网络的信号
getSSID()获得SSID
getSupplicanState()返回具体客户端状态的信息
4、WifiManager
这个不用说,就是用来管理我们的wifi连接,这里已经定义好了一些类,可以供我们使用。
获取WIFI网卡的状态
WIFI网卡的状态是由一系列的整形常量来表示的。
1、WIFI_STATE_DISABLED:
WIFI网卡不可用
(1)
2、WIFI_STATE_DISABLING:
WIFI网卡正在关闭(0)
3、WIFI_STATE_ENABLED:
WIFI网卡可用(3)
4、WIFI_STATE_ENABLING:
WIFI网正在打开
(2)(WIFI启动需要一段时间)
5.WIFI_STATE_UNKNOWN :
未知网卡状态
wifi的实例:
首先看以下main.xml:
XML/HTML代码
1.
xml version="1.0" encoding="utf-8"?
>
2. android=" 3. android: layout_width="fill_parent" 4. android: layout_height="fill_parent" 5. > 6. 7. 8. android: orientation="vertical" 9. android: layout_width="fill_parent" 10. android: layout_height="fill_parent" 11. > 12. 43.
接下来我们吧wifi的相关操作都封装在了一个WifiAdmin类中,以后开启或关闭等相关操作可以直接调用这个类的相关方法:
Java代码
1.import java.util.List;
2.
3.import android.content.Context;
4.import .wifi.ScanResult;
5.import .wifi.WifiConfiguration;
6.import .wifi.WifiInfo;
7.import .wifi.WifiManager;
8.import .wifi.WifiManager.WifiLock;
9.
10.public class WifiAdmin {
11. //定义一个WifiManager对象
12. private WifiManager mWifiManager;
13. //定义一个WifiInfo对象
14. private WifiInfo mWifiInfo;
15. //扫描出的网络连接列表
16. private List
17. //网络连接列表
18. private List
19. WifiLock mWifiLock;
20. public WifiAdmin(Context context){
21. //取得WifiManager对象
22. mWifiManager=(WifiManager) context.getSystemService(Context.WIFI_SERVICE);
23. //取得WifiInfo对象
24. mWifiInfo=mWifiManager.getConnectionInfo();
25. }
26. //打开wifi
27. public void openWifi(){
28. if(!
mWifiManager.isWifiEnabled()){
29. mWifiManager.setWifiEnabled(true);
30. }
31. }
32. //关闭wifi
33. public void closeWifi(){
34. if(!
mWifiManager.isWifiEnabled()){
35. mWifiManager.setWifiEnabled(false);
36. }
37. }
38. // 检查当前wifi状态
39. public int checkState() {
40. return mWifiManager.getWifiState();
41. }
42. //锁定wifiLock
43. public void acquireWifiLock(){
44. mWifiLock.acquire();
45. }
46. //解锁wifiLock
47. public void releaseWifiLock(){
48. //判断是否锁定
49. if(mWifiLock.isHeld()){
50. mWifiLock.acquire();
51. }
52. }
53. //创建一个wifiLock
54. public void createWifiLock(){
55. mWifiLock=mWifiManager.createWifiLock("test");
56. }
57. //得到配置好的网络
58. public List
59. return mWifiConfigurations;
60. }
61. //指定配置好的网络进行连接
62. public void
- 配套讲稿:
如PPT文件的首页显示word图标,表示该PPT已包含配套word讲稿。双击word图标可打开word文档。
- 特殊限制:
部分文档作品中含有的国旗、国徽等图片,仅作为作品整体效果示例展示,禁止商用。设计者仅对作品中独创性部分享有著作权。
- 关 键 词:
- 第12章 Android 通信业务开发 12 通信 业务 开发