1 # This file is part of NIT ( http://www.nitlanguage.org ).
3 # Licensed under the Apache License, Version 2.0 (the "License");
4 # you may not use this file except in compliance with the License.
5 # You may obtain a copy of the License at
7 # http://www.apache.org/licenses/LICENSE-2.0
9 # Unless required by applicable law or agreed to in writing, software
10 # distributed under the License is distributed on an "AS IS" BASIS,
11 # WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
12 # See the License for the specific language governing permissions and
13 # limitations under the License.
15 # Simple wrapper of the Android WiFi services
17 # Refer to the official Android documentation for the details on these services.
18 module wifi
is android_manifest
"""
19 <uses-permission android:name="android.hardware.WIFI" />
20 <uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
23 import android
::nit_activity
25 redef class NativeContext
26 # Handle to the WiFi system service
27 fun wifi_manager
: NativeWifiManager in "Java" `{
28 return (android.net.wifi.WifiManager)
29 self.getSystemService(android.content.Context.WIFI_SERVICE);
33 # Wraps Java class: `android.net.wifi.WifiManager`
34 extern class NativeWifiManager in "Java" `{ android.net.wifi.WifiManager `}
37 # Wraps: `removeNetwork
`
38 fun remove_network(arg0: Int): Bool in "Java" `{
39 return self.removeNetwork
((int
)arg0
);
42 # Wraps: `enableNetwork
`
43 fun enable_network(arg0: Int, arg1: Bool): Bool in "Java" `{
44 return self.enableNetwork
((int
)arg0
, arg1
);
47 # Wraps: `disableNetwork
`
48 fun disable_network(arg0: Int): Bool in "Java" `{
49 return self.disableNetwork
((int
)arg0
);
53 fun disconnect: Bool in "Java" `{
54 return self.disconnect
();
58 fun reconnect: Bool in "Java" `{
59 return self.reconnect
();
62 # Wraps: `reassociate
`
63 fun reassociate: Bool in "Java" `{
64 return self.reassociate
();
67 # Wraps: `pingSupplicant
`
68 fun ping_supplicant: Bool in "Java" `{
69 return self.pingSupplicant
();
73 fun start_scan: Bool in "Java" `{
74 return self.startScan
();
77 # Wraps: `getScanResults
`
78 fun get_scan_results: NativeListOfScanResult in "Java" `{
79 return self.getScanResults
();
82 # Wraps: `saveConfiguration
`
83 fun save_configuration: Bool in "Java" `{
84 return self.saveConfiguration
();
87 # Wraps: `setWifiEnabled
`
88 fun set_wifi_enabled(arg0: Bool): Bool in "Java" `{
89 return self.setWifiEnabled
(arg0
);
92 # Wraps: `getWifiState
`
93 fun get_wifi_state: Int in "Java" `{
94 return self.getWifiState
();
97 # Wraps: `isWifiEnabled
`
98 fun is_wifi_enabled: Bool in "Java" `{
99 return self.isWifiEnabled
();
102 # Wraps: `calculateSignalLevel
`
103 fun calculate_signal_level(arg0: Int, arg1: Int): Int in "Java" `{
104 return self.calculateSignalLevel
((int
)arg0
, (int
)arg1
);
107 # Wraps: `compareSignalLevel
`
108 fun compare_signal_level(arg0: Int, arg1: Int): Int in "Java" `{
109 return self.compareSignalLevel
((int
)arg0
, (int
)arg1
);
113 # Wraps Java class: `android
.net
.wifi
.ScanResult`
114 extern class NativeScanResult in "Java" `{ android.net.wifi.ScanResult `}
117 # Wraps: `describeContents`
118 fun describe_contents
: Int in "Java" `{
119 return self.describeContents();
123 fun bssid
: JavaString in "Java" `{
128 fun ssid
: JavaString in "Java" `{
132 # Wraps: `capabilities`
133 fun capabilities
: JavaString in "Java" `{
134 return self.capabilities;
138 fun frequency
: Int in "Java" `{
139 return self.frequency;
143 fun level
: Int in "Java" `{
148 # Java list of `NativeScanResult`
149 extern class NativeListOfScanResult in "Java" `{ java.util.List<android.net.wifi.ScanResult> `}
151 # Number of elements in this list
152 fun length: Int in "Java" `{ return self.size();`}
155 fun [](index
: Int): NativeScanResult in "Java" `{
156 return self.get((int)index);