1 /*
2  * Copyright (C) 2008 The Android Open Source Project
3  *
4  * Licensed under the Apache License, Version 2.0 (the "License");
5  * you may not use this file except in compliance with the License.
6  * You may obtain a copy of the License at
7  *
8  *      http://www.apache.org/licenses/LICENSE-2.0
9  *
10  * Unless required by applicable law or agreed to in writing, software
11  * distributed under the License is distributed on an "AS IS" BASIS,
12  * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
13  * See the License for the specific language governing permissions and
14  * limitations under the License.
15  */
16 
17 package android.net.wifi;
18 
19 import android.os.Messenger;
20 import android.os.Bundle;
21 import android.os.WorkSource;
22 import android.net.wifi.WifiScanner;
23 import android.net.wifi.ScanResult;
24 import android.net.wifi.IScanDataListener;
25 import android.net.wifi.IWifiScannerListener;
26 
27 /**
28  * {@hide}
29  */
30 interface IWifiScanner
31 {
getAvailableChannels(int band, String packageName, String featureId, in Bundle extras)32     Bundle getAvailableChannels(int band, String packageName, String featureId, in Bundle extras);
33 
isScanning()34     boolean isScanning();
35 
setScanningEnabled(boolean enable, int tid, String packageName)36     boolean setScanningEnabled(boolean enable, int tid, String packageName);
37 
registerScanListener(in IWifiScannerListener listener, String packageName, String featureId)38     void registerScanListener(in IWifiScannerListener listener, String packageName,
39             String featureId);
40 
unregisterScanListener(in IWifiScannerListener listener, String packageName, String featureId)41     void unregisterScanListener(in IWifiScannerListener listener, String packageName,
42            String featureId);
43 
startBackgroundScan(in IWifiScannerListener listener, in WifiScanner.ScanSettings settings, in WorkSource workSource, String packageName, String featureId)44     void startBackgroundScan(in IWifiScannerListener listener,
45             in WifiScanner.ScanSettings settings, in WorkSource workSource,
46             String packageName, String featureId);
47 
stopBackgroundScan(in IWifiScannerListener listener, String packageName, String featureId)48     void stopBackgroundScan(in IWifiScannerListener listener, String packageName, String featureId);
49 
getScanResults(String packageName, String featureId)50     boolean getScanResults(String packageName, String featureId);
51 
startScan(in IWifiScannerListener listener, in WifiScanner.ScanSettings settings, in WorkSource workSource, String packageName, String featureId)52     void startScan(in IWifiScannerListener listener,
53             in WifiScanner.ScanSettings settings, in WorkSource workSource,
54             String packageName, String featureId);
55 
stopScan(in IWifiScannerListener listener, String packageName, String featureId)56     void stopScan(in IWifiScannerListener listener, String packageName, String featureId);
57 
getSingleScanResults(String packageName, String featureId)58     List<ScanResult> getSingleScanResults(String packageName, String featureId);
59 
getCachedScanData(String packageName, String featureId, in IScanDataListener listener)60     void getCachedScanData(String packageName, String featureId, in IScanDataListener listener);
61 
startPnoScan(in IWifiScannerListener listener, in WifiScanner.ScanSettings scanSettings, in WifiScanner.PnoSettings pnoSettings, String packageName, String featureId)62     void startPnoScan(in IWifiScannerListener listener,
63             in WifiScanner.ScanSettings scanSettings,
64             in WifiScanner.PnoSettings pnoSettings,
65             String packageName, String featureId);
66 
stopPnoScan(in IWifiScannerListener listener, String packageName, String featureId)67     void stopPnoScan(in IWifiScannerListener listener, String packageName, String featureId);
68 
enableVerboseLogging(boolean enabled)69     void enableVerboseLogging(boolean enabled);
70 }
71