android 笔记 --- wifi应用

更新时间:2023-05-29 13:35:02 阅读量: 实用文档 文档下载

说明:文章内容仅供预览,部分内容可能不全。下载后的文档,内容与下面显示的完全一致。下载之前请确认下面内容是否您想要的,是否完整无缺。

Android-开启和关闭wifi的代码段

1、需要申请的权限

Java代码

1. android.permission.ACCESS_WIFI_STATE

2. android.permission.CHANGE_WIFI_STATE

3. android.permission.WAKE_LOCK

2、获取WifiManager

Java代码

1. wifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);

3、开启、关闭wifi

Java代码

1. if (wifiManager.isWifiEnabled()) {

2. wifiManager.setWifiEnabled(false);

3. } else {

4. wifiManager.setWifiEnabled(true);

5. }

4、注意

如果遇到force-close, 选wait即可, 因为启动wifi需要几秒钟, UI如果5妙钟还没反映的话, 系统会给你这个force close exception

Android Wifi的使用

Java代码

1. package com.Aina.Android;

2.

3. import java.util.List;

4.

5. import android.content.Context;

6. import .wifi.ScanResult;

7. import .wifi.WifiConfiguration;

8. import .wifi.WifiInfo;

9. import .wifi.WifiManager;

10.import .wifi.WifiManager.WifiLock;

11.

12./**

13. * com.Aina.Android Pro_wifi

14. *

15. * @author Aina.huang E-mail: 674023920@

16. * @version 创建时间:2010 Jul 21, 2010 12:29:00 PM 类说明

17. */

18.public class WifiAdmin {

19.

20. private WifiManager mWifiManager = null;

21. private WifiInfo mWifiInfo = null;

22. private List<ScanResult> mWifiList = null;// 扫描出的网络连接列表

23. private List<WifiConfiguration> mWifiConfiguration = null;// 网络连接列表

24. private WifiLock mWifiLock = null;

25.

26. public WifiAdmin(Context mContext) {

27. mWifiManager = (WifiManager) mContext

28. .getSystemService(mContext.WIFI_SERVICE);

29. mWifiInfo = mWifiManager.getConnectionInfo();

30. }

31.

32. public void OpenWifi() {

33. if (!mWifiManager.isWifiEnabled()) {

34. mWifiManager.setWifiEnabled(true);// 打开wifi

35. }

36. }

37.

38. public void CloseWife() {

39. if (mWifiManager.isWifiEnabled()) {

40. mWifiManager.setWifiEnabled(false);// 关闭wifi

41. }

42. }

43.

44. public void lockWifi() {

45. mWifiLock.acquire();// 锁定wifi

46. }

47.

48. public void rlockWifi() {

49. if (mWifiLock.isHeld()) {

50. mWifiLock.acquire();// 解锁wifi

51. }

52. }

53.

54. public void Createwifilock() {

55. mWifiLock = mWifiManager.createWifiLock("Testss");// 创建一个wifilock

56. }

57.

58. public List<WifiConfiguration> GetConfinguration() {

59. return mWifiConfiguration;// 得到配置好的网络

60. }

61.

62. public void ConnectConfiguration(int index) {

63. if (index > mWifiConfiguration.size()) {

64. return;

65. }

66. mWifiManager.enableNetwork(mWifiConfiguration.get(index).networkId, true);//连接配置好的指定ID的网络

67. }

68. public void StartScan()

69. {

70. mWifiManager.startScan();

71. //得到扫描结果

72. mWifiList = mWifiManager.getScanResults();

73. //得到配置好的网络连接

74. mWifiConfiguration = mWifiManager.getConfiguredNetworks

();

75. }

76. //得到网络列表

77. public List<ScanResult> GetWifiList()

78. {

79. return mWifiList;

80. }

81. //查看扫描结果

82. public StringBuilder LookUpScan()

83. {

84. StringBuilder stringBuilder = new StringBuilder();

85. for (int i = 0; i < mWifiList.size(); i++)

86. {

87. stringBuilder.append("Index_"+new Integer(i + 1).toString() + ":");

88. //将ScanResult信息转换成一个字符串包

89. //其中把包括:BSSID、SSID、capabilities、frequency、level

90. stringBuilder.append((mWifiList.get(i)).toString());

91. stringBuilder.append("\n");

92. }

93. return stringBuilder;

94. }

95. //得到MAC地址

96. public String GetMacAddress()

97. {

98. return (mWifiInfo == null) ? "NULL" : mWifiInfo.getMacAddress();

99. }

100. //得到接入点的BSSID

101. public String GetBSSID()

102. {

103. return (mWifiInfo == null) ? "NULL" : mWifiInfo.getBSSID();

104. }

105. //得到IP地址

106. public int GetIPAddress()

107. {

108. return (mWifiInfo == null) ? 0 : mWifiInfo.getIpAddress();

109. }

110. //得到连接的ID

111. public int GetNetworkId()

112. {

113. return (mWifiInfo == null) ? 0 : mWifiInfo.getNetworkId();

114. }

115. //得到WifiInfo的所有信息包

116. public String GetWifiInfo()

117. {

118. return (mWifiInfo == null) ? "NULL" : mWifiInfo.toString();

119. }

120. //添加一个网络并连接

121. public void AddNetwork(WifiConfiguration wcg)

122.

123.

124.

125.

126.

127.

128.

129.

130. { int wcgID = mWifiManager.addNetwork(wcg); mWifiManager.enableNetwork(wcgID, true); } //断开指定ID的网络 public void DisconnectWifi(int netId) { mWifiManager.disableNetwork(netId); mWifiManager.disconnect(); 131. }

132. }

本文来源:https://www.bwwdw.com/article/p9g4.html

Top