diff options
-rw-r--r-- | cmds/svc/src/com/android/commands/svc/WifiCommand.java | 2 | ||||
-rw-r--r-- | wifi/java/android/net/wifi/IWifiManager.aidl | 2 | ||||
-rw-r--r-- | wifi/java/android/net/wifi/WifiManager.java | 25 |
3 files changed, 26 insertions, 3 deletions
diff --git a/cmds/svc/src/com/android/commands/svc/WifiCommand.java b/cmds/svc/src/com/android/commands/svc/WifiCommand.java index 94214ff9694f..633dd9787cb1 100644 --- a/cmds/svc/src/com/android/commands/svc/WifiCommand.java +++ b/cmds/svc/src/com/android/commands/svc/WifiCommand.java @@ -52,7 +52,7 @@ public class WifiCommand extends Svc.Command { IWifiManager wifiMgr = IWifiManager.Stub.asInterface(ServiceManager.getService(Context.WIFI_SERVICE)); try { - wifiMgr.setWifiEnabled(flag); + wifiMgr.setWifiEnabled("com.android.shell", flag); } catch (RemoteException e) { System.err.println("Wi-Fi operation failed: " + e); diff --git a/wifi/java/android/net/wifi/IWifiManager.aidl b/wifi/java/android/net/wifi/IWifiManager.aidl index 9268a2b7cbe2..6c95865b9878 100644 --- a/wifi/java/android/net/wifi/IWifiManager.aidl +++ b/wifi/java/android/net/wifi/IWifiManager.aidl @@ -89,7 +89,7 @@ interface IWifiManager WifiInfo getConnectionInfo(); - boolean setWifiEnabled(boolean enable); + boolean setWifiEnabled(String packageName, boolean enable); int getWifiEnabledState(); diff --git a/wifi/java/android/net/wifi/WifiManager.java b/wifi/java/android/net/wifi/WifiManager.java index 1633bd9c914a..7fa2c47679c3 100644 --- a/wifi/java/android/net/wifi/WifiManager.java +++ b/wifi/java/android/net/wifi/WifiManager.java @@ -19,6 +19,7 @@ package android.net.wifi; import android.annotation.SdkConstant; import android.annotation.SdkConstant.SdkConstantType; import android.annotation.SystemApi; +import android.bluetooth.BluetoothAdapter; import android.content.Context; import android.net.ConnectivityManager; import android.net.DhcpInfo; @@ -563,6 +564,28 @@ public class WifiManager { public static final String ACTION_PICK_WIFI_NETWORK = "android.net.wifi.PICK_WIFI_NETWORK"; /** + * Activity Action: Show UI to get user approval to enable WiFi. + * <p>Input: {@link android.content.Intent#EXTRA_PACKAGE_NAME} string extra with + * the name of the app requesting the action. + * <p>Output: Nothing. + * + * @hide + */ + @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION) + public static final String ACTION_REQUEST_ENABLE = "android.net.wifi.action.REQUEST_ENABLE"; + + /** + * Activity Action: Show UI to get user approval to disable WiFi. + * <p>Input: {@link android.content.Intent#EXTRA_PACKAGE_NAME} string extra with + * the name of the app requesting the action. + * <p>Output: Nothing. + * + * @hide + */ + @SdkConstant(SdkConstantType.ACTIVITY_INTENT_ACTION) + public static final String ACTION_REQUEST_DISABLE = "android.net.wifi.action.REQUEST_DISABLE"; + + /** * Internally used Wi-Fi lock mode representing the case were no locks are held. * @hide */ @@ -1445,7 +1468,7 @@ public class WifiManager { */ public boolean setWifiEnabled(boolean enabled) { try { - return mService.setWifiEnabled(enabled); + return mService.setWifiEnabled(mContext.getOpPackageName(), enabled); } catch (RemoteException e) { throw e.rethrowFromSystemServer(); } |