Merge "Add setWifiApConfiguration interface" into gingerbread

This commit is contained in:
Irfan Sheriff
2010-06-25 19:49:58 -07:00
committed by Android (Google) Code Review
3 changed files with 22 additions and 3 deletions

View File

@@ -631,6 +631,7 @@ public class WifiService extends IWifiManager.Stub {
} }
public WifiConfiguration getWifiApConfiguration() { public WifiConfiguration getWifiApConfiguration() {
enforceAccessPermission();
final ContentResolver cr = mContext.getContentResolver(); final ContentResolver cr = mContext.getContentResolver();
WifiConfiguration wifiConfig = new WifiConfiguration(); WifiConfiguration wifiConfig = new WifiConfiguration();
int authType; int authType;
@@ -648,7 +649,8 @@ public class WifiService extends IWifiManager.Stub {
} }
} }
private void persistApConfiguration(WifiConfiguration wifiConfig) { public void setWifiApConfiguration(WifiConfiguration wifiConfig) {
enforceChangePermission();
final ContentResolver cr = mContext.getContentResolver(); final ContentResolver cr = mContext.getContentResolver();
boolean isWpa; boolean isWpa;
if (wifiConfig == null) if (wifiConfig == null)
@@ -681,7 +683,7 @@ public class WifiService extends IWifiManager.Stub {
try { try {
nwService.setAccessPoint(wifiConfig, mWifiStateTracker.getInterfaceName(), nwService.setAccessPoint(wifiConfig, mWifiStateTracker.getInterfaceName(),
SOFTAP_IFACE); SOFTAP_IFACE);
persistApConfiguration(wifiConfig); setWifiApConfiguration(wifiConfig);
return true; return true;
} catch(Exception e) { } catch(Exception e) {
Slog.e(TAG, "Exception in nwService during AP restart"); Slog.e(TAG, "Exception in nwService during AP restart");
@@ -733,7 +735,7 @@ public class WifiService extends IWifiManager.Stub {
return false; return false;
} }
persistApConfiguration(wifiConfig); setWifiApConfiguration(wifiConfig);
} else { } else {

View File

@@ -83,5 +83,7 @@ interface IWifiManager
int getWifiApEnabledState(); int getWifiApEnabledState();
WifiConfiguration getWifiApConfiguration(); WifiConfiguration getWifiApConfiguration();
void setWifiApConfiguration(in WifiConfiguration wifiConfig);
} }

View File

@@ -823,6 +823,21 @@ public class WifiManager {
} }
} }
/**
* Sets the Wi-Fi AP Configuration.
* @return {@code true} if the operation succeeded, {@code false} otherwise
*
* @hide Dont open yet
*/
public boolean setWifiApConfiguration(WifiConfiguration wifiConfig) {
try {
mService.setWifiApConfiguration(wifiConfig);
return true;
} catch (RemoteException e) {
return false;
}
}
/** /**
* Allows an application to keep the Wi-Fi radio awake. * Allows an application to keep the Wi-Fi radio awake.
* Normally the Wi-Fi radio may turn off when the user has not used the device in a while. * Normally the Wi-Fi radio may turn off when the user has not used the device in a while.