Wifi网络连接

package com.wifi;

import java.util.List;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo.State;
import android.net.wifi.ScanResult;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiManager;
import android.util.Log;

public class NetChoice {

// String wifiSSID="FORTUNETONE";
Context context;
WifiManager wifiManager;

// WifiReceiver wifiReceiver;
public NetChoice(Context context) {
this.context = context;
wifiManager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE);
// wifiReceiver=new WifiReceiver();
// context.registerReceiver(wifiReceiver, new
// IntentFilter(WifiManager.SCAN_RESULTS_AVAILABLE_ACTION));
}

/**
* 判断当前网络连接状态 0、无连接 1、3G 2、WIFI
*
* @return
* @author 2011-08-16
*/
public int checkNetworkInfo() {
int netType = 0;
ConnectivityManager conMan = (ConnectivityManager) context
.getSystemService(Context.CONNECTIVITY_SERVICE);
State mobile = conMan.getNetworkInfo(ConnectivityManager.TYPE_MOBILE)
.getState();
State wifi = conMan.getNetworkInfo(ConnectivityManager.TYPE_WIFI)
.getState();
if (mobile == State.CONNECTED || mobile == State.CONNECTING) {
netType = 1;
}

if (wifi == State.CONNECTED || wifi == State.CONNECTING) {
netType = 2;
}
Log.d("carWifi", wifi + "---wifi--state--mobile--" + mobile
+ "---type--" + netType);
return netType;
}

/**
* WIFI勾选 开关
*
* @author 2011-08-16
*/
public void openWifi() {
boolean b = false;
if (!wifiManager.isWifiEnabled()) {
b = wifiManager.setWifiEnabled(true);
Log.d("carWifi", "---------open wifi --" + b);
} else {
Log.d("carWifi", "-----wifi was open!!--");
}
}

public void closeWifi() {
if (wifiManager.isWifiEnabled()) {
wifiManager.setWifiEnabled(false);
}
}

/**
* 添加WIFI信息
*
* @param wifiList
* 搜索到的wifi集合
* @param wifiSSID
* wifi名称
* @param pwd
* wifi密码
* @return wifiId
* @author 2011-08-16
*/
public int addWifiConfig(List<ScanResult> wifiList, String wifiSSID,
String pwd) {
int wifiId = -1;
if (wifiList != null) {
for (int i = 0; i < wifiList.size(); i++) {
ScanResult sr = wifiList.get(i);
if (sr.SSID.equals(wifiSSID)) {
WifiConfiguration wc = new WifiConfiguration();
wc.SSID = "\"" + wifiSSID + "\"";
wc.preSharedKey = "\"" + pwd + "\"";
wifiId = wifiManager.addNetwork(wc);
if (wifiId != -1) {
return wifiId;
}
}
}
}

return wifiId;
}

/**
* 连接wifi
*
* @param wifiId
* @return
* @author 2011-08-16
*/
public boolean connectWifi(int wifiId) {
for (int i = 0; i < wifiManager.getConfiguredNetworks().size(); i++) {
WifiConfiguration wc = wifiManager.getConfiguredNetworks().get(i);
if (wc.networkId == wifiId) {
return wifiManager.enableNetwork(wc.networkId, true);
}
}

return false;
}
public List<WifiConfiguration> getConnectionWifi(){
return wifiManager.getConfiguredNetworks();
}

public boolean addWifiConnection(String wifiSSID,String pwd){
boolean isConnection = false;
WifiConfiguration wc = new WifiConfiguration();
wc.SSID = "\"" + wifiSSID + "\"";
wc.preSharedKey = "\"" + pwd + "\"";
int wifiId = wifiManager.addNetwork(wc);
System.out.println("wifiId:"+wifiId);
if (wifiId != -1) {
isConnection = wifiManager.enableNetwork(wifiId, true);
}
return isConnection;
}

/**
* 扫描wifi热点
*
* @return wifiList
* @author 2011-08-16
*/
public List<ScanResult> scanWifi() {
// wifiManager.startScan();
return wifiManager.getScanResults();
}

// class WifiReceiver extends BroadcastReceiver{
//
// @Override
// public void onReceive(Context context, Intent intent)
// {
// // TODO Auto-generated method stub
// wifiList=wifiManager.getScanResults();
// }
//
// }
}
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值