diff options
-rw-r--r-- | services/Android.bp | 2 | ||||
-rw-r--r-- | services/api/current.txt | 9 | ||||
-rw-r--r-- | services/wifi/Android.bp | 13 | ||||
-rw-r--r-- | services/wifi/java/com/android/server/wifi/SupplicantManager.java | 47 |
4 files changed, 71 insertions, 0 deletions
diff --git a/services/Android.bp b/services/Android.bp index db6e21a62ff3..ef47867eed48 100644 --- a/services/Android.bp +++ b/services/Android.bp @@ -29,6 +29,7 @@ filegroup { ":services.usage-sources", ":services.usb-sources", ":services.voiceinteraction-sources", + ":services.wifi-sources", ":service-permission-sources", ":service-statsd-sources", ], @@ -71,6 +72,7 @@ java_library { "services.usage", "services.usb", "services.voiceinteraction", + "services.wifi", "android.hidl.base-V1.0-java", ], diff --git a/services/api/current.txt b/services/api/current.txt index 26a65f21ed83..4a0a0d8e5aef 100644 --- a/services/api/current.txt +++ b/services/api/current.txt @@ -74,3 +74,12 @@ package com.android.server { } +package com.android.server.wifi { + + public class SupplicantManager { + method public static void start(); + method public static void stop(); + } + +} + diff --git a/services/wifi/Android.bp b/services/wifi/Android.bp new file mode 100644 index 000000000000..f56c2cf76956 --- /dev/null +++ b/services/wifi/Android.bp @@ -0,0 +1,13 @@ +filegroup { + name: "services.wifi-sources", + srcs: ["java/**/*.java"], + path: "java", + visibility: ["//frameworks/base/services"], +} + +java_library_static { + name: "services.wifi", + srcs: [ + ":services.wifi-sources", + ], +} diff --git a/services/wifi/java/com/android/server/wifi/SupplicantManager.java b/services/wifi/java/com/android/server/wifi/SupplicantManager.java new file mode 100644 index 000000000000..5ed1ab3198e2 --- /dev/null +++ b/services/wifi/java/com/android/server/wifi/SupplicantManager.java @@ -0,0 +1,47 @@ +/* + * Copyright (C) 2020 The Android Open Source Project + * + * Licensed under the Apache License, Version 2.0 (the "License"); + * you may not use this file except in compliance with the License. + * You may obtain a copy of the License at + * + * http://www.apache.org/licenses/LICENSE-2.0 + * + * Unless required by applicable law or agreed to in writing, software + * distributed under the License is distributed on an "AS IS" BASIS, + * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied. + * See the License for the specific language governing permissions and + * limitations under the License. + */ + +package com.android.server.wifi; + +import android.annotation.SystemApi; +import android.os.SystemService; + +/** + * Wrapper to start/stop supplicant daemon using init system. + * @hide + */ +@SystemApi(client = SystemApi.Client.SYSTEM_SERVER) +public class SupplicantManager { + private static final String WPA_SUPPLICANT_DAEMON_NAME = "wpa_supplicant"; + + private SupplicantManager() {} + + /** + * Start the wpa_supplicant daemon. + * Note: This uses the init system to start the "wpa_supplicant" service. + */ + public static void start() { + SystemService.start(WPA_SUPPLICANT_DAEMON_NAME); + } + + /** + * Stop the wpa_supplicant daemon. + * Note: This uses the init system to stop the "wpa_supplicant" service. + */ + public static void stop() { + SystemService.stop(WPA_SUPPLICANT_DAEMON_NAME); + } +} |