软录 · 2023年4月15日

安卓连接wifi代码|安卓手机怎么连wifi图解

⑴ android 命令怎么连接wifi点

1234567891011121314151617/** * 检测网络是否连接 * @return */ private boolean checkNetworkState() { boolean flag = false; //得到网络连接信息 manager = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE); //去进行判断网络是否连接 if (manager.getActiveNetworkInfo() != null) { flag = manager.getActiveNetworkInfo().isAvailable(); } if (!flag) { setNetwork(); } else { isNetworkAvailable(); }12 return flag; } /** * 网络未连接时,调用设置方法 */ private void setNetwork(){ Toast.makeText(this, "wifi is closed!", Toast.LENGTH_SHORT).show(); AlertDialog.Builder builder = new AlertDialog.Builder(this); builder.setIcon(R.drawable.ic_launcher); builder.setTitle("网络提示信息"); builder.setMessage("网络不可用,如果继续,请先设置网络!"); builder.setPositiveButton("设置", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) { Intent intent = null; /** * 判断手机系统的版本!如果<a href="https:///s?wd=API&tn=44039180_cpr&fenlei=-EUBt1njRLPWfkn1D4PWm1njmkPWf" target="_blank" class="-highlight">API</a>大于10 就是3.0+ * 因为3.0以上的版本的设置和3.0以下的设置不一样,调用的方法不同 */ if (android.os.Build.VERSION.SDK_INT > 10) { intent = new Intent(android.provider.Settings.ACTION_WIFI_SETTINGS); } else { intent = new Intent(); ComponentName component = new ComponentName( "com.android.settings", "com.android.settings.WirelessSettings"); intent.setComponent(component); intent.setAction("android.intent.action.VIEW"); } startActivity(intent); } });123 builder.setNegativeButton("取消", new OnClickListener() { @Override public void onClick(DialogInterface dialog, int which) {3233343536 } }); builder.create(); builder.show(); } /** * 网络已经连接,然后去判断是wifi连接还是<a href="https:///s?wd=GPRS&tn=44039180_cpr&fenlei=-EUBt1njRLPWfkn1D4PWm1njmkPWf" target="_blank" class="-highlight">GPRS</a>连接 * 设置一些自己的逻辑调用 */ private void isNetworkAvailable(){ State <a href="https:///s?wd=gprs&tn=44039180_cpr&fenlei=-EUBt1njRLPWfkn1D4PWm1njmkPWf" target="_blank" class="-highlight">gprs</a> = manager.getNetworkInfo(ConnectivityManager.TYPE_MOBILE).getState(); State wifi = manager.getNetworkInfo(ConnectivityManager.TYPE_WIFI).getState(); if(<a href="https:///s?wd=gprs&tn=44039180_cpr&fenlei=-EUBt1njRLPWfkn1D4PWm1njmkPWf" target="_blank" class="-highlight">gprs</a> == State.CONNECTED gprs == State.CONNECTING){ Toast.makeText(this, "wifi is open! gprs", Toast.LENGTH_SHORT).show(); } //判断为wifi状态下才加载广告,如果是GPRS手机网络则不加载! if(wifi == State.CONNECTED wifi == State.CONNECTING){ Toast.makeText(this, "wifi is open! wifi", Toast.LENGTH_SHORT).show(); loadAdmob(); } } /** * 在wifi状态下 加载admob广告 */ private void loadAdmob(){ ll = (LinearLayout) findViewById(R.id.load_ads); ll.removeAllViews(); adsView = new AdView(this, AdSize.BANNER, "a15194a1ac9505d"); ll.addView(adsView); adsView.loadAd(new AdRequest()); }

⑵ Android开发,怎么在代码里获得当前连接wifi的端口号

首先AndroidMainfest.xml文件中添加权限: <uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" /> <!– 获取WIFI信息状态的权限 –> <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" /> <!– 获取网络状态改变的权限 –> 然后再activity中添加如下代码: private String getConnectWifiSsid(){ WifiManager wifiManager = (WifiManager) getSystemService(WIFI_SERVICE); WifiInfo wifiInfo = wifiManager.getConnectionInfo(); Log.d("wifiInfo", wifiInfo.toString()); Log.d("SSID",wifiInfo.getSSID()); return wifiInfo.getSSID(); } 该接口即返回当前连接的wifi的名字,也就是SSID。

⑶ 在android上查看wifi状态,代码如下:

不知道你的程序报的是什么错,给你一个例子吧,不过方法和你的有点差别:public class WifiAdmin { /**WiFi Manager**/ private WifiManager wifimanager; /**WiFi Information**/ private WifiInfo wifiinfo; /**Activity NetWork List**/ private List<ScanResult> netlist; /**Configured NetWork List**/ private List<WifiConfiguration> connectedlist; /**WiFi Lock**/ private WifiLock wifilock; public WifiAdmin(Context context) { wifimanager = (WifiManager) context.getSystemService(Context.WIFI_SERVICE); } /** * WiFi Operate * */ /**Open WiFi**/ public void openWifi() { if (!wifimanager.isWifiEnabled()) { wifimanager.setWifiEnabled(true); } } /**Close WiFi**/ public void closeWifi() { if (wifimanager.isWifiEnabled()) { wifimanager.setWifiEnabled(false); } } /**WiFi State**/ public int checkState() { return wifimanager.getWifiState(); } /** * WiFiLock Operate * */ /**Create WiFiLock**/ public void creatWifiLock() { wifilock = wifimanager.createWifiLock("Test"); } /**Lock WiFi**/ public void acquireWifiLock() { wifilock.acquire(); } /**Clear WiFiLock**/ public void releaseWifiLock() { if (wifilock.isHeld()) { wifilock.release(); } } /** * WiFiInfo Operate * */ /**Get WiFiInfo**/ public WifiInfo getWifiInfo(){ wifiinfo = wifimanager.getConnectionInfo(); return wifiinfo; } /** * NetWork Operate * */ /**Scan**/ public void startScan() { wifimanager.startScan(); netlist = wifimanager.getScanResults(); connectedlist = wifimanager.getConfiguredNetworks(); } /**Get Configured NetWork**/ public List<WifiConfiguration> getConfiguration() { return connectedlist; } /**Get Activity NetWork**/ public List<ScanResult> getWifiList() { return netlist; } /**Connect a NetWork**/ public void connectConfiguration(int index) { if (index < 0 || index > connectedlist.size()) { return; } wifimanager.enableNetwork(connectedlist.get(index).networkId,true); } /**Add a NetWork**/ public void addNetwork(WifiConfiguration wcg) { int wcgID = wifimanager.addNetwork(wcg); wifimanager.enableNetwork(wcgID, true); } /**DisConnect a NetWork**/ public void disconnectWifi(int netId) { wifimanager.disableNetwork(netId); wifimanager.disconnect(); }}

⑷ android开发中,连接wifi需要使用哪个函数

我也正在搞这个,问题也很多,都还没解决,这是我在网上查到的方法:// 添加一个网络并连接public void AddNetwork(WifiConfiguration wcg) { int wcgID = mWifiManager.addNetwork(wcg); mWifiManager.enableNetwork(wcgID, true);}但是我有问题就是,首先:ScanResult中获取的SSID等信息和WifiConfiguration中获取的SSID信息有什么不一样,一个是扫描到的,一个是连接后得到的?这个我不理解。第二:按照上面的连接代码,只需要得到WifiConfiguration对象就可以了,我通过public List<WifiConfiguration> getConfiguredNetworks ()得到的WifiConfiguration对象就可以拿去连接了?既然我通过这个就能连接,那我拿ScanResult中的信息有什么用?还有就是,WifiConfiguration对象是在哪个阶段能获取的?启动Wifi?扫描开始?或者是连接上ap后?我表示很迷茫。第三:怎么通过代码设置一台手机为Ap?我找不到相关的方法。第四:假设两台手机,一台做Ap,一台连接,连接上了,然后数据方面怎么传输?蓝牙有个BuletoothSocket和BuletoothServiceSocket,Wifi呢?直接只用JAVA的Socket?

⑸ android开发中如果我想代码实现打开wifi热点如何实现

1·申请权限:android.permission.ACCESS_WIFI_STATE android.permission.CHANGE_WIFI_STATE android.permission.WAKE_LOCK2·获取WifiManagerwifiManager = (WifiManager) this.getSystemService(Context.WIFI_SERVICE);3·开启、关闭wifiif (wifiManager.isWifiEnabled()) { wifiManager.setWifiEnabled(false); } else { wifiManager.setWifiEnabled(true); }4·注意如果遇到force-close, 选wait即可, 因为启动wifi需要几秒钟, UI如果5妙钟还没反映的话, 系统会给你这个force close exception PS:我以前做过设计读取系统硬件信息的时候用过,但是很长时间没用了,这段注释是从网上来的,希望能帮到你。

⑹ Android开发如何使用代码配置手机wifi的pac地址

这里用到的手机型号为魅族M6120,其中的具体步骤如下:

1、打开手机的设置界面,需要选择无线网络这一项。

⑺ android怎么自动连接以zd开头的wifi,知道密码,想用代码直接连接

public class WifiAutoConnectManager {private static final String TAG = WifiAutoConnectManager.class.getSimpleName();WifiManager wifiManager; // 定义几种加密方式,一种是WEP,一种是WPA,还有没有密码的情况 public enum WifiCipherType { WIFICIPHER_WEP, WIFICIPHER_WPA, WIFICIPHER_NOPASS, WIFICIPHER_INVALID } // 构造函数 public WifiAutoConnectManager(WifiManager wifiManager) { this.wifiManager = wifiManager; } // 提供一个外部接口,传入要连接的无线网 public void connect(String ssid, String password, WifiCipherType type) { Thread thread = new Thread(new ConnectRunnable(ssid, password, type)); thread.start(); } // 查看以前是否也配置过这个网络 private WifiConfiguration isExsits(String SSID) { List<WifiConfiguration> existingConfigs = wifiManager.getConfiguredNetworks(); for (WifiConfiguration existingConfig : existingConfigs) { if (existingConfig.SSID.equals("\"" + SSID + "\"")) { return existingConfig; } } return null; } private WifiConfiguration createWifiInfo(String SSID, String Password, WifiCipherType Type) { WifiConfiguration config = new WifiConfiguration(); config.allowedAuthAlgorithms.clear(); config.allowedGroupCiphers.clear(); config.allowedKeyManagement.clear(); config.allowedPairwiseCiphers.clear(); config.allowedProtocols.clear(); config.SSID = "\"" + SSID + "\""; // nopass if (Type == WifiCipherType.WIFICIPHER_NOPASS) { config.wepKeys[0] = ""; config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.NONE); config.wepTxKeyIndex = 0; } // wep if (Type == WifiCipherType.WIFICIPHER_WEP) { if (!TextUtils.isEmpty(Password)) { if (isHexWepKey(Password)) { config.wepKeys[0] = Password; } else { config.wepKeys[0] = "\"" + Password + "\""; } } config.allowedAuthAlgorithms.set(AuthAlgorithm.OPEN); config.allowedAuthAlgorithms.set(AuthAlgorithm.SHARED); config.allowedKeyManagement.set(KeyMgmt.NONE); config.wepTxKeyIndex = 0; } // wpa if (Type == WifiCipherType.WIFICIPHER_WPA) { config.preSharedKey = "\"" + Password + "\""; config.hiddenSSID = true; config.allowedAuthAlgorithms.set(WifiConfiguration.AuthAlgorithm.OPEN); config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.TKIP); config.allowedKeyManagement.set(WifiConfiguration.KeyMgmt.WPA_PSK); config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.TKIP); // 此处需要修改否则不能自动重联 // config.allowedProtocols.set(WifiConfiguration.Protocol.WPA); config.allowedGroupCiphers.set(WifiConfiguration.GroupCipher.CCMP); config.allowedPairwiseCiphers.set(WifiConfiguration.PairwiseCipher.CCMP); config.status = WifiConfiguration.Status.ENABLED; } return config; } // 打开wifi功能 private boolean openWifi() { boolean bRet = true; if (!wifiManager.isWifiEnabled()) { bRet = wifiManager.setWifiEnabled(true); } return bRet; } class ConnectRunnable implements Runnable { private String ssid;private String password;private WifiCipherType type; public ConnectRunnable(String ssid, String password, WifiCipherType type) { this.ssid = ssid; this.password = password; this.type = type; } @Override public void run() { // 打开wifi openWifi(); // 开启wifi功能需要一段时间(我在手机上测试一般需要1-3秒左右),所以要等到wifi // 状态变成WIFI_STATE_ENABLED的时候才能执行下面的语句 while (wifiManager.getWifiState() == WifiManager.WIFI_STATE_ENABLING) { try { // 为了避免程序一直while循环,让它睡个100毫秒检测…… Thread.sleep(100); } catch (InterruptedException ie) { } } WifiConfiguration wifiConfig = createWifiInfo(ssid, password, type); // if (wifiConfig == null) { Log.d(TAG, "wifiConfig is null!"); return; }WifiConfiguration tempConfig = isExsits(ssid); if (tempConfig != null) { wifiManager.removeNetwork(tempConfig.networkId); } int netID = wifiManager.addNetwork(wifiConfig); boolean enabled = wifiManager.enableNetwork(netID, true); Log.d(TAG, "enableNetwork status enable=" + enabled); boolean connected = wifiManager.reconnect(); Log.d(TAG, "enableNetwork connected=" + connected); } } private static boolean isHexWepKey(String wepKey) { final int len = wepKey.length(); // WEP-40, WEP-104, and some vendors using 256-bit WEP (WEP-232?) if (len != 10 && len != 26 && len != 58) { return false; } return isHex(wepKey); } private static boolean isHex(String key) { for (int i = key.length() – 1; i >= 0; i–) { final char c = key.charAt(i); if (!(c >= '0' && c <= '9' || c >= 'A' && c <= 'F' || c >= 'a' && c <= 'f')) { return false; } } return true; }}

⑻ 安卓手机怎么连wifi图解

手机连接无线网络方法:1.下滑屏幕顶帘-点击WLAN图标,图标变绿代表无线网内络功能已经开启容。2.长按WLAN图标进入WLAN设置界面,开启无线网络后手机自动搜索显示可连接的无线网络名称,点击要连接的无线网络名称-输入密码-点击连接即可。

⑼ android 给我一段代码,点击一个按钮,手机就连上指定的wifi

public class HotspotActivity extends Activity { private WifiManager wifiManager; private Button open; private boolean flag=false; @Override protected void onCreate(Bundle savedInstanceState) { // TODO Auto-generated method stub super.onCreate(savedInstanceState); setContentView(R.layout.main); //获取wifi管理服务 wifiManager = (WifiManager) getSystemService(Context.WIFI_SERVICE); open=(Button)findViewById(R.id.open_hotspot); //通过按钮事件设置热点 open.setOnClickListener(new View.OnClickListener() { @Override public void onClick(View v) { //如果是打开状态就关闭,如果是关闭就打开 flag=!flag; setWifiApEnabled(flag); } }); } // wifi热点开关 public boolean setWifiApEnabled(boolean enabled) { if (enabled) { // disable WiFi in any case //wifi和热点不能同时打开,所以打开热点的时候需要关闭wifi wifiManager.setWifiEnabled(false); } try { //热点的配置类 WifiConfiguration apConfig = new WifiConfiguration(); //配置热点的名称(可以在名字后面加点随机数什么的) apConfig.SSID = "YRCCONNECTION"; //配置热点的密码 apConfig.preSharedKey="12122112"; //通过反射调用设置热点 Method method = wifiManager.getClass().getMethod( "setWifiApEnabled", WifiConfiguration.class, Boolean.TYPE); //返回热点打开状态 return (Boolean) method.invoke(wifiManager, apConfig, enabled); } catch (Exception e) { return false; } } } 在人家网易博客上看到的博主:bsky