Check what ssid is currently connected?
Hi,
I am using the code below to connect an adroid phone to a wireless network. Is there a way I can have it check to see if it is already connected to it before it attempts to connect?
package koz.koz.imobile;
import android.app.Activity;
import android.os.Bundle;
import android.app.Activity;
import android.content.Context;
import android.net.ConnectivityManager;
import android.net.NetworkInfo;
import android.net.wifi.WifiConfiguration;
import android.net.wifi.WifiInfo;
import android.net.wifi.WifiManager;
import android.os.Bundle;
import android.util.Log;
import android.widget.EditText;
import android.widget.TextView;
public class IVMOBILEActivity extends Activity {
/** Called when the activity is first created. */
@Override
public void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
//setContentView(R.layout.main);
//////////////////////////////////
super.onCreate(savedInstanceState);
TextView tv = new TextView(this);
TextView status = new TextView(this);
WifiManager wifi = (WifiManager) getSystemService(Context.WIFI_SERVICE);
WifiConfiguration wc = new WifiConfiguration();
wc.SSID = "\"test\""; //IMP! This should be in Quotes!!
wc.hiddenSSID = true;
wc.status = WifiConfiguration.Status.ENABLED;
wc.priority = 10;
wc.allowedKeyManagement.set(WifiConfiguration.KeyM gmt.WPA_PSK);
wc.allowedProtocols.set(WifiConfiguration.Protocol .RSN);
wc.allowedProtocols.set(WifiConfiguration.Protocol .WPA);
wc.allowedAuthAlgorithms.set(WifiConfiguration.Aut hAlgorithm.OPEN);
wc.allowedAuthAlgorithms.set(WifiConfiguration.Aut hAlgorithm.SHARED);
wc.allowedPairwiseCiphers.set(WifiConfiguration.Pa irwiseCipher.CCMP);
wc.allowedPairwiseCiphers.set(WifiConfiguration.Pa irwiseCipher.TKIP);
//.allowedGroupCiphers.set(WifiConfiguration.GroupCi pher.WEP40);
//.allowedGroupCiphers.set(WifiConfiguration.GroupCi pher.WEP104);
//This is the WEP Password
//wc.wepTxKeyIndex = 0;
wc.preSharedKey = "\"test\"";
WifiManager wifiManag = (WifiManager) this.getSystemService(WIFI_SERVICE);
boolean res1 = wifiManag.setWifiEnabled(true);
int res = wifi.addNetwork(wc);
Log.d("WifiPreference", "add Network returned " + res );
boolean es = wifi.saveConfiguration();
Log.d("WifiPreference", "saveConfiguration returned " + es );
boolean b = wifi.enableNetwork(res, true);
Log.d("WifiPreference", "enableNetwork returned " + b );
tv.setText("You are now connected! " +
"Version 1.0");
status.setText("The was an error connecting , please try again.");
try {
Thread.sleep(5000);
ConnectivityManager connec = (ConnectivityManager)getSystemService(Context.CONN ECTIVITY_SERVICE);
if (connec != null && (connec.getNetworkInfo(1).getState() == NetworkInfo.State.CONNECTED) ||(connec.getNetworkInfo(0).getState() == NetworkInfo.State.CONNECTED)){
//You are connected, do something online.
setContentView(tv);
}else if (connec.getNetworkInfo(0).getState() == NetworkInfo.State.DISCONNECTED || connec.getNetworkInfo(1).getState() == NetworkInfo.State.DISCONNECTED ) {
//Not connected.
setContentView(status);
}
} catch (InterruptedException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
}
Re: Check what ssid is currently connected?
Moved from New to Java. In future, please find and post in the most appropriate section.
db