Java 通过编程将新网络添加到android设备
我需要通过以下代码以编程方式连接到设备的新wifi网络: ` `Java 通过编程将新网络添加到android设备,java,android,networking,connection,wifi,Java,Android,Networking,Connection,Wifi,我需要通过以下代码以编程方式连接到设备的新wifi网络: ` ` 但我无法将网络添加到我的设备 问题在于无法添加到网络的网络配置 我不明白为什么不工作没有结果 请帮助我您应该将权限添加到清单中(和运行时权限) 您的日志怎么说?我看不懂很多消息,最后失败了这是日志mStopped=false mHashWindowFocus=true sendUserActionEvent()mView=null,并且输入事件接收器已被配置我知道权限没有问题 try { String ssid =
但我无法将网络添加到我的设备 问题在于无法添加到网络的网络配置 我不明白为什么不工作没有结果
请帮助我您应该将权限添加到清单中(和运行时权限)
您的日志怎么说?我看不懂很多消息,最后失败了这是日志mStopped=false mHashWindowFocus=true sendUserActionEvent()mView=null,并且输入事件接收器已被配置我知道权限没有问题
try
{
String ssid = "\"" + SSID + "\"";
String pass = "\"" + Pass + "\"";
for (ScanResult result : results)
{
if (result.SSID.equals(SSID))
{
String security = getScanResultSecurity(result);
if (security.equals("PSK")) {
WifiConfiguration con = new WifiConfiguration();
con.SSID = ssid;
AlertDialog a = new AlertDialog.Builder(MainActivity.this).create();
a.setMessage("in");
a.show();
con.preSharedKey = pass;
con.hiddenSSID = true;
con.status = WifiConfiguration.Status.ENABLED;
con.allowedGroupCiphers.set(WifiConfiguration.Grou pCipher.TKIP);
con.allowedGroupCiphers.set(WifiConfiguration.Grou pCipher.CCMP);
con.allowedKeyManagement.set(WifiConfiguration.Key Mgmt.WPA_PSK);
con.allowedPairwiseCiphers.set(WifiConfiguration.P airwiseCipher.TKIP);
con.allowedPairwiseCiphers.set(WifiConfiguration.P airwiseCipher.CCMP);
con.allowedKeyManagement.set(WifiConfiguration.Key Mgmt.NONE);
con.allowedProtocols.set(WifiConfiguration.Protoco l.RSN);
con.allowedProtocols.set(WifiConfiguration.Protoco l.WPA);
int ntid = wifimanager.addNetwork(con);
wifimanager.disconnect();
wifimanager.enableNetwork(ntid,true);
wifimanager.reconnect();
boolean b = wifimanager.saveConfiguration();
if (ntid != -1 && b) {
AlertDialog a2 = new AlertDialog.Builder(MainActivity.this).create();
a2.setMessage("saved");
a2.show();
}
}
}
}
catch (Exception ex) {
AlertDialog a = new AlertDialog.Builder(MainActivity.this).create();
a.setMessage(ex.getMessage());
a.show();
}
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.INTERNET" />