@capgo/capacitor-wifi 7.0.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CapgoCapacitorWifi.podspec +17 -0
- package/LICENSE +21 -0
- package/Package.swift +30 -0
- package/README.md +450 -0
- package/android/build.gradle +59 -0
- package/android/src/main/AndroidManifest.xml +9 -0
- package/android/src/main/java/app/capgo/capacitorwifi/CapacitorWifiPlugin.java +439 -0
- package/android/src/main/java/ee/forgr/plugin/capacitor_wifi/CapacitorWifiPlugin.java +591 -0
- package/dist/docs.json +1031 -0
- package/dist/esm/definitions.d.ts +493 -0
- package/dist/esm/definitions.js +75 -0
- package/dist/esm/definitions.js.map +1 -0
- package/dist/esm/index.d.ts +4 -0
- package/dist/esm/index.js +7 -0
- package/dist/esm/index.js.map +1 -0
- package/dist/esm/web.d.ts +18 -0
- package/dist/esm/web.js +40 -0
- package/dist/esm/web.js.map +1 -0
- package/dist/plugin.cjs.js +129 -0
- package/dist/plugin.cjs.js.map +1 -0
- package/dist/plugin.js +132 -0
- package/dist/plugin.js.map +1 -0
- package/ios/Sources/CapacitorWifiPlugin/CapacitorWifiPlugin.swift +227 -0
- package/ios/Tests/CapacitorWifiPluginTests/CapacitorWifiPluginTests.swift +10 -0
- package/package.json +86 -0
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
require 'json'
|
|
2
|
+
|
|
3
|
+
package = JSON.parse(File.read(File.join(__dir__, 'package.json')))
|
|
4
|
+
|
|
5
|
+
Pod::Spec.new do |s|
|
|
6
|
+
s.name = 'CapgoCapacitorWifi'
|
|
7
|
+
s.version = package['version']
|
|
8
|
+
s.summary = package['description']
|
|
9
|
+
s.license = package['license']
|
|
10
|
+
s.homepage = package['repository']['url']
|
|
11
|
+
s.author = package['author']
|
|
12
|
+
s.source = { :git => package['repository']['url'], :tag => s.version.to_s }
|
|
13
|
+
s.source_files = 'ios/Sources/**/*.{swift,h,m,c,cc,mm,cpp}'
|
|
14
|
+
s.ios.deployment_target = '14.0'
|
|
15
|
+
s.dependency 'Capacitor'
|
|
16
|
+
s.swift_version = '5.1'
|
|
17
|
+
end
|
package/LICENSE
ADDED
|
@@ -0,0 +1,21 @@
|
|
|
1
|
+
MIT License
|
|
2
|
+
|
|
3
|
+
Copyright (c) 2025 Martin Donadieu
|
|
4
|
+
|
|
5
|
+
Permission is hereby granted, free of charge, to any person obtaining a copy
|
|
6
|
+
of this software and associated documentation files (the "Software"), to deal
|
|
7
|
+
in the Software without restriction, including without limitation the rights
|
|
8
|
+
to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
|
|
9
|
+
copies of the Software, and to permit persons to whom the Software is
|
|
10
|
+
furnished to do so, subject to the following conditions:
|
|
11
|
+
|
|
12
|
+
The above copyright notice and this permission notice shall be included in all
|
|
13
|
+
copies or substantial portions of the Software.
|
|
14
|
+
|
|
15
|
+
THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
|
|
16
|
+
IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
|
|
17
|
+
FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
|
|
18
|
+
AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
|
|
19
|
+
LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
|
|
20
|
+
OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
|
|
21
|
+
SOFTWARE.
|
package/Package.swift
ADDED
|
@@ -0,0 +1,30 @@
|
|
|
1
|
+
// swift-tools-version: 5.9
|
|
2
|
+
import PackageDescription
|
|
3
|
+
|
|
4
|
+
let package = Package(
|
|
5
|
+
name: "CapgoCapacitorWifi",
|
|
6
|
+
platforms: [.iOS(.v14)],
|
|
7
|
+
products: [
|
|
8
|
+
.library(
|
|
9
|
+
name: "CapgoCapacitorWifi",
|
|
10
|
+
targets: ["CapacitorWifiPlugin"])
|
|
11
|
+
],
|
|
12
|
+
dependencies: [
|
|
13
|
+
.package(url: "https://github.com/ionic-team/capacitor-swift-pm.git", from: "7.0.0")
|
|
14
|
+
],
|
|
15
|
+
targets: [
|
|
16
|
+
.target(
|
|
17
|
+
name: "CapacitorWifiPlugin",
|
|
18
|
+
dependencies: [
|
|
19
|
+
.product(name: "Capacitor", package: "capacitor-swift-pm"),
|
|
20
|
+
.product(name: "Cordova", package: "capacitor-swift-pm")
|
|
21
|
+
],
|
|
22
|
+
path: "ios/Sources/CapacitorWifiPlugin"
|
|
23
|
+
),
|
|
24
|
+
.testTarget(
|
|
25
|
+
name: "CapacitorWifiPluginTests",
|
|
26
|
+
dependencies: ["CapacitorWifiPlugin"],
|
|
27
|
+
path: "ios/Tests/CapacitorWifiPluginTests"
|
|
28
|
+
)
|
|
29
|
+
]
|
|
30
|
+
)
|
package/README.md
ADDED
|
@@ -0,0 +1,450 @@
|
|
|
1
|
+
# @capgo/capacitor-wifi
|
|
2
|
+
<a href="https://capgo.app/"><img src='https://raw.githubusercontent.com/Cap-go/capgo/main/assets/capgo_banner.png' alt='Capgo - Instant updates for capacitor'/></a>
|
|
3
|
+
|
|
4
|
+
<div align="center">
|
|
5
|
+
<h2><a href="https://capgo.app/?ref=plugin_wifi"> ➡️ Get Instant updates for your App with Capgo</a></h2>
|
|
6
|
+
<h2><a href="https://capgo.app/consulting/?ref=plugin_wifi"> Missing a feature? We'll build the plugin for you 💪</a></h2>
|
|
7
|
+
</div>
|
|
8
|
+
|
|
9
|
+
Manage WiFi connectivity for your Capacitor app
|
|
10
|
+
|
|
11
|
+
## Why Capacitor WiFi?
|
|
12
|
+
|
|
13
|
+
A free and powerful WiFi management plugin with modern platform support:
|
|
14
|
+
|
|
15
|
+
- **Network management** - Connect, disconnect, and add WiFi networks programmatically
|
|
16
|
+
- **Network scanning** - Discover available WiFi networks (Android only)
|
|
17
|
+
- **Network info** - Get SSID, IP address, and signal strength (RSSI)
|
|
18
|
+
- **Modern APIs** - Uses NetworkExtension (iOS) and handles Android 10+ restrictions
|
|
19
|
+
- **Cross-platform** - Consistent API across iOS and Android
|
|
20
|
+
|
|
21
|
+
Perfect for IoT apps, network diagnostic tools, and smart home applications.
|
|
22
|
+
|
|
23
|
+
## Documentation
|
|
24
|
+
|
|
25
|
+
The most complete doc is available here: https://capgo.app/docs/plugins/wifi/
|
|
26
|
+
|
|
27
|
+
## Install
|
|
28
|
+
|
|
29
|
+
```bash
|
|
30
|
+
npm install @capgo/capacitor-wifi
|
|
31
|
+
npx cap sync
|
|
32
|
+
```
|
|
33
|
+
|
|
34
|
+
## Requirements
|
|
35
|
+
|
|
36
|
+
- **iOS**: Requires location permission (`NSLocationWhenInUseUsageDescription` in Info.plist) to access WiFi information. Uses NetworkExtension framework.
|
|
37
|
+
- **Android**: Requires location permissions. Network scanning and RSSI available on Android only. Android 10+ uses system dialogs for adding networks.
|
|
38
|
+
|
|
39
|
+
## API
|
|
40
|
+
|
|
41
|
+
<docgen-index>
|
|
42
|
+
|
|
43
|
+
* [`addNetwork(...)`](#addnetwork)
|
|
44
|
+
* [`connect(...)`](#connect)
|
|
45
|
+
* [`disconnect(...)`](#disconnect)
|
|
46
|
+
* [`getAvailableNetworks()`](#getavailablenetworks)
|
|
47
|
+
* [`getIpAddress()`](#getipaddress)
|
|
48
|
+
* [`getRssi()`](#getrssi)
|
|
49
|
+
* [`getSsid()`](#getssid)
|
|
50
|
+
* [`isEnabled()`](#isenabled)
|
|
51
|
+
* [`startScan()`](#startscan)
|
|
52
|
+
* [`checkPermissions()`](#checkpermissions)
|
|
53
|
+
* [`requestPermissions(...)`](#requestpermissions)
|
|
54
|
+
* [`addListener('networksScanned', ...)`](#addlistenernetworksscanned-)
|
|
55
|
+
* [`removeAllListeners()`](#removealllisteners)
|
|
56
|
+
* [`getPluginVersion()`](#getpluginversion)
|
|
57
|
+
* [Interfaces](#interfaces)
|
|
58
|
+
* [Type Aliases](#type-aliases)
|
|
59
|
+
* [Enums](#enums)
|
|
60
|
+
|
|
61
|
+
</docgen-index>
|
|
62
|
+
|
|
63
|
+
<docgen-api>
|
|
64
|
+
<!--Update the source file JSDoc comments and rerun docgen to update the docs below-->
|
|
65
|
+
|
|
66
|
+
WiFi plugin for managing device WiFi connectivity
|
|
67
|
+
|
|
68
|
+
### addNetwork(...)
|
|
69
|
+
|
|
70
|
+
```typescript
|
|
71
|
+
addNetwork(options: AddNetworkOptions) => Promise<void>
|
|
72
|
+
```
|
|
73
|
+
|
|
74
|
+
Show a system dialog to add a Wi-Fi network to the device.
|
|
75
|
+
On Android SDK 30+, this opens the system Wi-Fi settings with the network pre-filled.
|
|
76
|
+
On iOS, this connects to the network directly.
|
|
77
|
+
|
|
78
|
+
| Param | Type | Description |
|
|
79
|
+
| ------------- | --------------------------------------------------------------- | ------------------------------------------------------ |
|
|
80
|
+
| **`options`** | <code><a href="#addnetworkoptions">AddNetworkOptions</a></code> | - <a href="#network">Network</a> configuration options |
|
|
81
|
+
|
|
82
|
+
**Since:** 7.0.0
|
|
83
|
+
|
|
84
|
+
--------------------
|
|
85
|
+
|
|
86
|
+
|
|
87
|
+
### connect(...)
|
|
88
|
+
|
|
89
|
+
```typescript
|
|
90
|
+
connect(options: ConnectOptions) => Promise<void>
|
|
91
|
+
```
|
|
92
|
+
|
|
93
|
+
Connect to a Wi-Fi network.
|
|
94
|
+
On Android, this creates a temporary connection that doesn't route traffic through the network by default.
|
|
95
|
+
For a persistent connection on Android, use addNetwork() instead.
|
|
96
|
+
On iOS, this creates a persistent connection.
|
|
97
|
+
|
|
98
|
+
| Param | Type | Description |
|
|
99
|
+
| ------------- | --------------------------------------------------------- | -------------------- |
|
|
100
|
+
| **`options`** | <code><a href="#connectoptions">ConnectOptions</a></code> | - Connection options |
|
|
101
|
+
|
|
102
|
+
**Since:** 7.0.0
|
|
103
|
+
|
|
104
|
+
--------------------
|
|
105
|
+
|
|
106
|
+
|
|
107
|
+
### disconnect(...)
|
|
108
|
+
|
|
109
|
+
```typescript
|
|
110
|
+
disconnect(options?: DisconnectOptions | undefined) => Promise<void>
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
Disconnect from the current Wi-Fi network.
|
|
114
|
+
On iOS, only disconnects from networks that were added via this plugin.
|
|
115
|
+
|
|
116
|
+
| Param | Type | Description |
|
|
117
|
+
| ------------- | --------------------------------------------------------------- | ----------------------------- |
|
|
118
|
+
| **`options`** | <code><a href="#disconnectoptions">DisconnectOptions</a></code> | - Optional disconnect options |
|
|
119
|
+
|
|
120
|
+
**Since:** 7.0.0
|
|
121
|
+
|
|
122
|
+
--------------------
|
|
123
|
+
|
|
124
|
+
|
|
125
|
+
### getAvailableNetworks()
|
|
126
|
+
|
|
127
|
+
```typescript
|
|
128
|
+
getAvailableNetworks() => Promise<GetAvailableNetworksResult>
|
|
129
|
+
```
|
|
130
|
+
|
|
131
|
+
Get a list of available Wi-Fi networks from the last scan.
|
|
132
|
+
Only available on Android.
|
|
133
|
+
|
|
134
|
+
**Returns:** <code>Promise<<a href="#getavailablenetworksresult">GetAvailableNetworksResult</a>></code>
|
|
135
|
+
|
|
136
|
+
**Since:** 7.0.0
|
|
137
|
+
|
|
138
|
+
--------------------
|
|
139
|
+
|
|
140
|
+
|
|
141
|
+
### getIpAddress()
|
|
142
|
+
|
|
143
|
+
```typescript
|
|
144
|
+
getIpAddress() => Promise<GetIpAddressResult>
|
|
145
|
+
```
|
|
146
|
+
|
|
147
|
+
Get the device's current IP address.
|
|
148
|
+
Available on both Android and iOS.
|
|
149
|
+
|
|
150
|
+
**Returns:** <code>Promise<<a href="#getipaddressresult">GetIpAddressResult</a>></code>
|
|
151
|
+
|
|
152
|
+
**Since:** 7.0.0
|
|
153
|
+
|
|
154
|
+
--------------------
|
|
155
|
+
|
|
156
|
+
|
|
157
|
+
### getRssi()
|
|
158
|
+
|
|
159
|
+
```typescript
|
|
160
|
+
getRssi() => Promise<GetRssiResult>
|
|
161
|
+
```
|
|
162
|
+
|
|
163
|
+
Get the received signal strength indicator (RSSI) of the current network in dBm.
|
|
164
|
+
Only available on Android.
|
|
165
|
+
|
|
166
|
+
**Returns:** <code>Promise<<a href="#getrssiresult">GetRssiResult</a>></code>
|
|
167
|
+
|
|
168
|
+
**Since:** 7.0.0
|
|
169
|
+
|
|
170
|
+
--------------------
|
|
171
|
+
|
|
172
|
+
|
|
173
|
+
### getSsid()
|
|
174
|
+
|
|
175
|
+
```typescript
|
|
176
|
+
getSsid() => Promise<GetSsidResult>
|
|
177
|
+
```
|
|
178
|
+
|
|
179
|
+
Get the service set identifier (SSID) of the current network.
|
|
180
|
+
Available on both Android and iOS.
|
|
181
|
+
|
|
182
|
+
**Returns:** <code>Promise<<a href="#getssidresult">GetSsidResult</a>></code>
|
|
183
|
+
|
|
184
|
+
**Since:** 7.0.0
|
|
185
|
+
|
|
186
|
+
--------------------
|
|
187
|
+
|
|
188
|
+
|
|
189
|
+
### isEnabled()
|
|
190
|
+
|
|
191
|
+
```typescript
|
|
192
|
+
isEnabled() => Promise<IsEnabledResult>
|
|
193
|
+
```
|
|
194
|
+
|
|
195
|
+
Check if Wi-Fi is enabled on the device.
|
|
196
|
+
Only available on Android.
|
|
197
|
+
|
|
198
|
+
**Returns:** <code>Promise<<a href="#isenabledresult">IsEnabledResult</a>></code>
|
|
199
|
+
|
|
200
|
+
**Since:** 7.0.0
|
|
201
|
+
|
|
202
|
+
--------------------
|
|
203
|
+
|
|
204
|
+
|
|
205
|
+
### startScan()
|
|
206
|
+
|
|
207
|
+
```typescript
|
|
208
|
+
startScan() => Promise<void>
|
|
209
|
+
```
|
|
210
|
+
|
|
211
|
+
Start scanning for Wi-Fi networks.
|
|
212
|
+
Only available on Android.
|
|
213
|
+
Results are delivered via the 'networksScanned' event listener.
|
|
214
|
+
Note: May fail due to system throttling or hardware issues.
|
|
215
|
+
|
|
216
|
+
**Since:** 7.0.0
|
|
217
|
+
|
|
218
|
+
--------------------
|
|
219
|
+
|
|
220
|
+
|
|
221
|
+
### checkPermissions()
|
|
222
|
+
|
|
223
|
+
```typescript
|
|
224
|
+
checkPermissions() => Promise<PermissionStatus>
|
|
225
|
+
```
|
|
226
|
+
|
|
227
|
+
Check the current permission status for location access.
|
|
228
|
+
Location permission is required for Wi-Fi operations on both platforms.
|
|
229
|
+
|
|
230
|
+
**Returns:** <code>Promise<<a href="#permissionstatus">PermissionStatus</a>></code>
|
|
231
|
+
|
|
232
|
+
**Since:** 7.0.0
|
|
233
|
+
|
|
234
|
+
--------------------
|
|
235
|
+
|
|
236
|
+
|
|
237
|
+
### requestPermissions(...)
|
|
238
|
+
|
|
239
|
+
```typescript
|
|
240
|
+
requestPermissions(options?: RequestPermissionsOptions | undefined) => Promise<PermissionStatus>
|
|
241
|
+
```
|
|
242
|
+
|
|
243
|
+
Request location permissions from the user.
|
|
244
|
+
Location permission is required for Wi-Fi operations on both platforms.
|
|
245
|
+
|
|
246
|
+
| Param | Type | Description |
|
|
247
|
+
| ------------- | ------------------------------------------------------------------------------- | ------------------------------------- |
|
|
248
|
+
| **`options`** | <code><a href="#requestpermissionsoptions">RequestPermissionsOptions</a></code> | - Optional permission request options |
|
|
249
|
+
|
|
250
|
+
**Returns:** <code>Promise<<a href="#permissionstatus">PermissionStatus</a>></code>
|
|
251
|
+
|
|
252
|
+
**Since:** 7.0.0
|
|
253
|
+
|
|
254
|
+
--------------------
|
|
255
|
+
|
|
256
|
+
|
|
257
|
+
### addListener('networksScanned', ...)
|
|
258
|
+
|
|
259
|
+
```typescript
|
|
260
|
+
addListener(eventName: 'networksScanned', listenerFunc: () => void) => Promise<PluginListenerHandle>
|
|
261
|
+
```
|
|
262
|
+
|
|
263
|
+
Add a listener for the 'networksScanned' event.
|
|
264
|
+
Only available on Android.
|
|
265
|
+
This event is fired when Wi-Fi scan results are available.
|
|
266
|
+
|
|
267
|
+
| Param | Type | Description |
|
|
268
|
+
| ------------------ | ------------------------------ | ------------------------------------ |
|
|
269
|
+
| **`eventName`** | <code>'networksScanned'</code> | - The event name ('networksScanned') |
|
|
270
|
+
| **`listenerFunc`** | <code>() => void</code> | - The callback function to execute |
|
|
271
|
+
|
|
272
|
+
**Returns:** <code>Promise<<a href="#pluginlistenerhandle">PluginListenerHandle</a>></code>
|
|
273
|
+
|
|
274
|
+
**Since:** 7.0.0
|
|
275
|
+
|
|
276
|
+
--------------------
|
|
277
|
+
|
|
278
|
+
|
|
279
|
+
### removeAllListeners()
|
|
280
|
+
|
|
281
|
+
```typescript
|
|
282
|
+
removeAllListeners() => Promise<void>
|
|
283
|
+
```
|
|
284
|
+
|
|
285
|
+
Remove all listeners for this plugin.
|
|
286
|
+
|
|
287
|
+
**Since:** 7.0.0
|
|
288
|
+
|
|
289
|
+
--------------------
|
|
290
|
+
|
|
291
|
+
|
|
292
|
+
### getPluginVersion()
|
|
293
|
+
|
|
294
|
+
```typescript
|
|
295
|
+
getPluginVersion() => Promise<{ version: string; }>
|
|
296
|
+
```
|
|
297
|
+
|
|
298
|
+
Get the native plugin version.
|
|
299
|
+
|
|
300
|
+
**Returns:** <code>Promise<{ version: string; }></code>
|
|
301
|
+
|
|
302
|
+
**Since:** 7.0.0
|
|
303
|
+
|
|
304
|
+
--------------------
|
|
305
|
+
|
|
306
|
+
|
|
307
|
+
### Interfaces
|
|
308
|
+
|
|
309
|
+
|
|
310
|
+
#### AddNetworkOptions
|
|
311
|
+
|
|
312
|
+
Options for adding a network
|
|
313
|
+
|
|
314
|
+
| Prop | Type | Description | Default | Since |
|
|
315
|
+
| ------------------ | ------------------------------------------------------------------- | --------------------------------------------------------- | ----------------------------------------- | ----- |
|
|
316
|
+
| **`ssid`** | <code>string</code> | The SSID of the network to add | | 7.0.0 |
|
|
317
|
+
| **`password`** | <code>string</code> | The password for the network (optional for open networks) | | 7.0.0 |
|
|
318
|
+
| **`isHiddenSsid`** | <code>boolean</code> | Whether the network is hidden (Android only) | <code>false</code> | 7.0.0 |
|
|
319
|
+
| **`securityType`** | <code><a href="#networksecuritytype">NetworkSecurityType</a></code> | The security type of the network (Android only) | <code>NetworkSecurityType.WPA2_PSK</code> | 7.0.0 |
|
|
320
|
+
|
|
321
|
+
|
|
322
|
+
#### ConnectOptions
|
|
323
|
+
|
|
324
|
+
Options for connecting to a network
|
|
325
|
+
|
|
326
|
+
| Prop | Type | Description | Default | Since |
|
|
327
|
+
| ------------------ | -------------------- | --------------------------------------------------------- | ------------------ | ----- |
|
|
328
|
+
| **`ssid`** | <code>string</code> | The SSID of the network to connect to | | 7.0.0 |
|
|
329
|
+
| **`password`** | <code>string</code> | The password for the network (optional for open networks) | | 7.0.0 |
|
|
330
|
+
| **`isHiddenSsid`** | <code>boolean</code> | Whether the network is hidden (Android only) | <code>false</code> | 7.0.0 |
|
|
331
|
+
|
|
332
|
+
|
|
333
|
+
#### DisconnectOptions
|
|
334
|
+
|
|
335
|
+
Options for disconnecting from a network
|
|
336
|
+
|
|
337
|
+
| Prop | Type | Description | Since |
|
|
338
|
+
| ---------- | ------------------- | ----------------------------------------------------- | ----- |
|
|
339
|
+
| **`ssid`** | <code>string</code> | The SSID of the network to disconnect from (optional) | 7.0.0 |
|
|
340
|
+
|
|
341
|
+
|
|
342
|
+
#### GetAvailableNetworksResult
|
|
343
|
+
|
|
344
|
+
Result from getAvailableNetworks()
|
|
345
|
+
|
|
346
|
+
| Prop | Type | Description | Since |
|
|
347
|
+
| -------------- | ---------------------- | -------------------------- | ----- |
|
|
348
|
+
| **`networks`** | <code>Network[]</code> | List of available networks | 7.0.0 |
|
|
349
|
+
|
|
350
|
+
|
|
351
|
+
#### Network
|
|
352
|
+
|
|
353
|
+
Represents a Wi-Fi network
|
|
354
|
+
|
|
355
|
+
| Prop | Type | Description | Since |
|
|
356
|
+
| ------------------- | ---------------------------------- | ------------------------------------------------------------------- | ----- |
|
|
357
|
+
| **`ssid`** | <code>string</code> | The SSID of the network | 7.0.0 |
|
|
358
|
+
| **`rssi`** | <code>number</code> | The signal strength in dBm | 7.0.0 |
|
|
359
|
+
| **`securityTypes`** | <code>NetworkSecurityType[]</code> | The security types supported by this network (Android SDK 33+ only) | 7.0.0 |
|
|
360
|
+
|
|
361
|
+
|
|
362
|
+
#### GetIpAddressResult
|
|
363
|
+
|
|
364
|
+
Result from getIpAddress()
|
|
365
|
+
|
|
366
|
+
| Prop | Type | Description | Since |
|
|
367
|
+
| --------------- | ------------------- | ----------------------- | ----- |
|
|
368
|
+
| **`ipAddress`** | <code>string</code> | The device's IP address | 7.0.0 |
|
|
369
|
+
|
|
370
|
+
|
|
371
|
+
#### GetRssiResult
|
|
372
|
+
|
|
373
|
+
Result from getRssi()
|
|
374
|
+
|
|
375
|
+
| Prop | Type | Description | Since |
|
|
376
|
+
| ---------- | ------------------- | -------------------------- | ----- |
|
|
377
|
+
| **`rssi`** | <code>number</code> | The signal strength in dBm | 7.0.0 |
|
|
378
|
+
|
|
379
|
+
|
|
380
|
+
#### GetSsidResult
|
|
381
|
+
|
|
382
|
+
Result from getSsid()
|
|
383
|
+
|
|
384
|
+
| Prop | Type | Description | Since |
|
|
385
|
+
| ---------- | ------------------- | ------------------------------- | ----- |
|
|
386
|
+
| **`ssid`** | <code>string</code> | The SSID of the current network | 7.0.0 |
|
|
387
|
+
|
|
388
|
+
|
|
389
|
+
#### IsEnabledResult
|
|
390
|
+
|
|
391
|
+
Result from isEnabled()
|
|
392
|
+
|
|
393
|
+
| Prop | Type | Description | Since |
|
|
394
|
+
| ------------- | -------------------- | ------------------------ | ----- |
|
|
395
|
+
| **`enabled`** | <code>boolean</code> | Whether Wi-Fi is enabled | 7.0.0 |
|
|
396
|
+
|
|
397
|
+
|
|
398
|
+
#### PermissionStatus
|
|
399
|
+
|
|
400
|
+
Permission status
|
|
401
|
+
|
|
402
|
+
| Prop | Type | Description | Since |
|
|
403
|
+
| -------------- | ----------------------------------------------------------- | ------------------------- | ----- |
|
|
404
|
+
| **`location`** | <code><a href="#permissionstate">PermissionState</a></code> | Location permission state | 7.0.0 |
|
|
405
|
+
|
|
406
|
+
|
|
407
|
+
#### RequestPermissionsOptions
|
|
408
|
+
|
|
409
|
+
Options for requesting permissions
|
|
410
|
+
|
|
411
|
+
| Prop | Type | Description | Since |
|
|
412
|
+
| ----------------- | ------------------------- | ---------------------- | ----- |
|
|
413
|
+
| **`permissions`** | <code>'location'[]</code> | Permissions to request | 7.0.0 |
|
|
414
|
+
|
|
415
|
+
|
|
416
|
+
#### PluginListenerHandle
|
|
417
|
+
|
|
418
|
+
| Prop | Type |
|
|
419
|
+
| ------------ | ----------------------------------------- |
|
|
420
|
+
| **`remove`** | <code>() => Promise<void></code> |
|
|
421
|
+
|
|
422
|
+
|
|
423
|
+
### Type Aliases
|
|
424
|
+
|
|
425
|
+
|
|
426
|
+
#### PermissionState
|
|
427
|
+
|
|
428
|
+
<code>'prompt' | 'prompt-with-rationale' | 'granted' | 'denied'</code>
|
|
429
|
+
|
|
430
|
+
|
|
431
|
+
### Enums
|
|
432
|
+
|
|
433
|
+
|
|
434
|
+
#### NetworkSecurityType
|
|
435
|
+
|
|
436
|
+
| Members | Value | Description | Since |
|
|
437
|
+
| ----------------------------- | --------------- | ------------------------------ | ----- |
|
|
438
|
+
| **`OPEN`** | <code>0</code> | Open network with no security | 7.0.0 |
|
|
439
|
+
| **`WEP`** | <code>1</code> | WEP security | 7.0.0 |
|
|
440
|
+
| **`WPA2_PSK`** | <code>2</code> | WPA/WPA2 Personal (PSK) | 7.0.0 |
|
|
441
|
+
| **`EAP`** | <code>3</code> | WPA/WPA2/WPA3 Enterprise (EAP) | 7.0.0 |
|
|
442
|
+
| **`SAE`** | <code>4</code> | WPA3 Personal (SAE) | 7.0.0 |
|
|
443
|
+
| **`WPA3_ENTERPRISE`** | <code>5</code> | WPA3 Enterprise | 7.0.0 |
|
|
444
|
+
| **`WPA3_ENTERPRISE_192_BIT`** | <code>6</code> | WPA3 Enterprise 192-bit mode | 7.0.0 |
|
|
445
|
+
| **`PASSPOINT`** | <code>7</code> | Passpoint network | 7.0.0 |
|
|
446
|
+
| **`OWE`** | <code>8</code> | Enhanced Open (OWE) | 7.0.0 |
|
|
447
|
+
| **`WAPI_PSK`** | <code>9</code> | WAPI PSK | 7.0.0 |
|
|
448
|
+
| **`WAPI_CERT`** | <code>10</code> | WAPI Certificate | 7.0.0 |
|
|
449
|
+
|
|
450
|
+
</docgen-api>
|
|
@@ -0,0 +1,59 @@
|
|
|
1
|
+
ext {
|
|
2
|
+
junitVersion = project.hasProperty('junitVersion') ? rootProject.ext.junitVersion : '4.13.2'
|
|
3
|
+
androidxJunitVersion = project.hasProperty('androidxJunitVersion') ? rootProject.ext.androidxJunitVersion : '1.2.1'
|
|
4
|
+
androidxEspressoCoreVersion = project.hasProperty('androidxEspressoCoreVersion') ? rootProject.ext.androidxEspressoCoreVersion : '3.6.1'
|
|
5
|
+
androidxAppCompatVersion = project.hasProperty('androidxAppCompatVersion') ? rootProject.ext.androidxAppCompatVersion : '1.7.0'
|
|
6
|
+
}
|
|
7
|
+
|
|
8
|
+
buildscript {
|
|
9
|
+
repositories {
|
|
10
|
+
mavenCentral()
|
|
11
|
+
google()
|
|
12
|
+
}
|
|
13
|
+
dependencies {
|
|
14
|
+
classpath 'com.android.tools.build:gradle:8.7.2'
|
|
15
|
+
}
|
|
16
|
+
}
|
|
17
|
+
|
|
18
|
+
apply plugin: 'com.android.library'
|
|
19
|
+
|
|
20
|
+
android {
|
|
21
|
+
namespace "ee.forgr.plugin.capacitor_wifi"
|
|
22
|
+
compileSdk project.hasProperty('compileSdkVersion') ? rootProject.ext.compileSdkVersion : 35
|
|
23
|
+
defaultConfig {
|
|
24
|
+
minSdkVersion project.hasProperty('minSdkVersion') ? rootProject.ext.minSdkVersion : 23
|
|
25
|
+
targetSdkVersion project.hasProperty('targetSdkVersion') ? rootProject.ext.targetSdkVersion : 35
|
|
26
|
+
versionCode 1
|
|
27
|
+
versionName "1.0"
|
|
28
|
+
testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner"
|
|
29
|
+
}
|
|
30
|
+
buildTypes {
|
|
31
|
+
release {
|
|
32
|
+
minifyEnabled false
|
|
33
|
+
proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
|
|
34
|
+
}
|
|
35
|
+
}
|
|
36
|
+
lintOptions {
|
|
37
|
+
abortOnError false
|
|
38
|
+
}
|
|
39
|
+
compileOptions {
|
|
40
|
+
sourceCompatibility JavaVersion.VERSION_21
|
|
41
|
+
targetCompatibility JavaVersion.VERSION_21
|
|
42
|
+
}
|
|
43
|
+
}
|
|
44
|
+
|
|
45
|
+
repositories {
|
|
46
|
+
google()
|
|
47
|
+
jcenter()
|
|
48
|
+
mavenCentral()
|
|
49
|
+
}
|
|
50
|
+
|
|
51
|
+
|
|
52
|
+
dependencies {
|
|
53
|
+
implementation fileTree(dir: 'libs', include: ['*.jar'])
|
|
54
|
+
implementation project(':capacitor-android')
|
|
55
|
+
implementation "androidx.appcompat:appcompat:$androidxAppCompatVersion"
|
|
56
|
+
testImplementation "junit:junit:$junitVersion"
|
|
57
|
+
androidTestImplementation "androidx.test.ext:junit:$androidxJunitVersion"
|
|
58
|
+
androidTestImplementation "androidx.test.espresso:espresso-core:$androidxEspressoCoreVersion"
|
|
59
|
+
}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
<?xml version="1.0" encoding="utf-8"?>
|
|
2
|
+
<manifest xmlns:android="http://schemas.android.com/apk/res/android">
|
|
3
|
+
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
|
|
4
|
+
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
|
|
5
|
+
<uses-permission android:name="android.permission.ACCESS_FINE_LOCATION" />
|
|
6
|
+
<uses-permission android:name="android.permission.ACCESS_COARSE_LOCATION" />
|
|
7
|
+
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
|
|
8
|
+
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
|
|
9
|
+
</manifest>
|