Control WifiManager.MulticastLock from connectivity dev app
Add buttons to acquire and release the WifiManager.MulticastLock. Change-Id: I28fd7743cb3adfeec055b6bcce2c8128b15cf2d3
This commit is contained in:
committed by
Lorenzo Colitti
parent
27d0c3e484
commit
0991017843
@@ -1,4 +1,4 @@
|
||||
/* //device/apps/Settings/src/com/android/settings/Keyguard.java
|
||||
/**
|
||||
**
|
||||
** Copyright 2006, The Android Open Source Project
|
||||
**
|
||||
@@ -132,6 +132,7 @@ public class Connectivity extends Activity {
|
||||
private String mTdlsAddr = null;
|
||||
|
||||
private WifiManager mWm;
|
||||
private WifiManager.MulticastLock mWml;
|
||||
private PowerManager mPm;
|
||||
private ConnectivityManager mCm;
|
||||
private INetworkManagementService mNetd;
|
||||
@@ -404,6 +405,7 @@ public class Connectivity extends Activity {
|
||||
setContentView(R.layout.connectivity);
|
||||
|
||||
mWm = (WifiManager)getSystemService(Context.WIFI_SERVICE);
|
||||
mWml = mWm.createMulticastLock(TAG);
|
||||
mPm = (PowerManager)getSystemService(Context.POWER_SERVICE);
|
||||
mCm = (ConnectivityManager) getSystemService(Context.CONNECTIVITY_SERVICE);
|
||||
IBinder b = ServiceManager.getService(Context.NETWORKMANAGEMENT_SERVICE);
|
||||
@@ -411,6 +413,9 @@ public class Connectivity extends Activity {
|
||||
|
||||
findViewById(R.id.enableWifi).setOnClickListener(mClickListener);
|
||||
findViewById(R.id.disableWifi).setOnClickListener(mClickListener);
|
||||
findViewById(R.id.acquireWifiMulticastLock).setOnClickListener(mClickListener);
|
||||
findViewById(R.id.releaseWifiMulticastLock).setOnClickListener(mClickListener);
|
||||
findViewById(R.id.releaseWifiMulticastLock).setEnabled(false);
|
||||
|
||||
findViewById(R.id.startDelayedCycle).setOnClickListener(mClickListener);
|
||||
findViewById(R.id.stopDelayedCycle).setOnClickListener(mClickListener);
|
||||
@@ -481,6 +486,7 @@ public class Connectivity extends Activity {
|
||||
mCm.unregisterNetworkCallback(mCallback);
|
||||
mCallback = null;
|
||||
unregisterReceiver(mReceiver);
|
||||
mWml.release();
|
||||
}
|
||||
|
||||
@Override
|
||||
@@ -498,6 +504,10 @@ public class Connectivity extends Activity {
|
||||
case R.id.disableWifi:
|
||||
mWm.setWifiEnabled(false);
|
||||
break;
|
||||
case R.id.acquireWifiMulticastLock:
|
||||
case R.id.releaseWifiMulticastLock:
|
||||
onWifiMulticastLock(v.getId() == R.id.acquireWifiMulticastLock);
|
||||
break;
|
||||
case R.id.startDelayedCycle:
|
||||
onStartDelayedCycle();
|
||||
break;
|
||||
@@ -784,4 +794,15 @@ public class Connectivity extends Activity {
|
||||
};
|
||||
requestThread.start();
|
||||
}
|
||||
|
||||
private void onWifiMulticastLock(boolean enable) {
|
||||
Log.d(TAG, (enable ? "Acquiring" : "Releasing") + " wifi multicast lock");
|
||||
if (enable) {
|
||||
mWml.acquire();
|
||||
} else {
|
||||
mWml.release();
|
||||
}
|
||||
findViewById(R.id.acquireWifiMulticastLock).setEnabled(!enable);
|
||||
findViewById(R.id.releaseWifiMulticastLock).setEnabled(enable);
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user