6.1.0 • Published 23 hours ago

@falconeta/capacitor-wifi-connect v6.1.0

Weekly downloads
-
License
MIT
Repository
github
Last release
23 hours ago

@falconeta/capacitor-wifi-connect

Do you like the plugin?

If you can contribute or you want to, feel free to do it at Buy me a coffee! ☕, I will be really thankfull for anything even if it is a coffee or just a kind comment towards my work, because that helps me a lot.

"Buy Me A Coffee"

Description

plugin used for connect the device trhought Wifi also with prefix

Install

npm install @falconeta/capacitor-wifi-connect
npx cap sync

Example usage

import { CapacitorWifiConnect } from "@falconeta/capacitor-wifi-connect";

  async secureConnect() {
    let { value } = await CapacitorWifiConnect.checkPermission();
    if (value === 'prompt') {
      const data = await CapacitorWifiConnect.requestPermission();
      value = data.value;
    }
    if (value === 'granted') {
      CapacitorWifiConnect.secureConnect({
        ssid: 'SSID', 
        password: 'PWD', 
      }).then((data) => alert(data.value));
    } else {
      throw new Error('permission denied');
    }
  }

iOS Functions

For functionality, you need to note the following:

  • Connect/Disconnect only works for iOS11+

  • prefixConnect/securePrefixConnect only works for iOS13+

  • Can't run in the simulator so you need to attach an actual device when building with xCode

  • Will ensure 'HotspotConfiguration' and 'Wifi Information' capabilities are added to your xCode project

  • Will ensure that these permission are described in info.plist

  <key>NSLocationAlwaysAndWhenInUseUsageDescription</key>
  <string>...</string>
  <key>NSLocationAlwaysUsageDescription</key>
  <string>...</string>
  <key>NSLocationWhenInUseUsageDescription</key>
  <string>...</string>

API

checkPermission()

checkPermission() => Promise<{ value: PermissionState; }>

method that check if the app has autorization or not to use the location capability.

Returns: Promise<{ value: PermissionState; }>

Since: 1.0.0


requestPermission()

requestPermission() => Promise<{ value: PermissionState; }>

method that request (if the status of authorization is prompt) autorization to use the location capability.

Returns: Promise<{ value: PermissionState; }>

Since: 1.0.0


disconnect()

disconnect() => Promise<{ value: boolean; }>

method that disconnects from the wifi network if the network was connected to using one of the connect methods.

Returns: Promise<{ value: boolean; }>

Since: 1.0.0


getSSIDs()

getSSIDs() => Promise<{ value: string[]; status: ConnectState; }>

ONLY ANDROID returns the current SSID connected by Application WARNING: app is restricted to 4 scans every 2 minutes

Returns: Promise<{ value: string[]; status: ConnectState; }>

Since: 5.1.0


getAppSSID()

getAppSSID() => Promise<{ value: string; status: ConnectState; }>

returns the current SSID connected by Application

Returns: Promise<{ value: string; status: ConnectState; }>

Since: 5.1.0


getDeviceSSID()

getDeviceSSID() => Promise<{ value: string; status: ConnectState; }>

iOS >= 14, Android >=9:

returns the current SSID connected by device

Returns: Promise<{ value: string; status: ConnectState; }>

Since: 5.1.0


connect(...)

connect(options: { ssid: string; saveNetwork?: boolean; }) => Promise<{ value: ConnectState; }>

method attempts to connect to wifi matching explicitly the ssid parameter WARNING: saveNetwork is enabled by default on iOS and cannot be disabled due Apple's bug. (https://forums.developer.apple.com/forums/thread/700612)

ParamType
options{ ssid: string; saveNetwork?: boolean; }

Returns: Promise<{ value: ConnectState; }>

Since: 1.0.0


prefixConnect(...)

prefixConnect(options: { ssid: string; saveNetwork?: boolean; }) => Promise<{ value: ConnectState; }>

method attempts to connect to the nearest wifi network with the ssid prefix matching the ssidPrefix parameter. WARNING: saveNetwork is enabled by default on iOS and cannot be disabled due Apple's bug. (https://forums.developer.apple.com/forums/thread/700612)

ParamType
options{ ssid: string; saveNetwork?: boolean; }

Returns: Promise<{ value: ConnectState; }>

Since: 1.0.0


secureConnect(...)

secureConnect(options: { ssid: string; password: string; saveNetwork?: boolean; isWep?: boolean; }) => Promise<{ value: ConnectState; }>

method attempts to connect to wifi matching explicitly the ssid parameter. This will fail if the password doesn't match or the isWep parameter isn't set correctly. Android does not support WEP Networks. WARNING: saveNetwork is enabled by default on iOS and cannot be disabled due Apple's bug. (https://forums.developer.apple.com/forums/thread/700612)

ParamType
options{ ssid: string; password: string; saveNetwork?: boolean; isWep?: boolean; }

Returns: Promise<{ value: ConnectState; }>

Since: 1.0.0


securePrefixConnect(...)

securePrefixConnect(options: { ssid: string; password: string; saveNetwork?: boolean; isWep?: boolean; }) => Promise<{ value: ConnectState; }>

method attempts to connect to the nearest wifi network with the ssid prefix matching the ssidPrefix parameter. This will fail if the password doesn't match or the isWep parameter isn't set correctly. Android does not support WEP Networks. WARNING: saveNetwork is enabled by default on iOS and cannot be disabled due Apple's bug. (https://forums.developer.apple.com/forums/thread/700612)

ParamType
options{ ssid: string; password: string; saveNetwork?: boolean; isWep?: boolean; }

Returns: Promise<{ value: ConnectState; }>

Since: 1.0.0


Type Aliases

PermissionState

'prompt' | 'prompt-with-rationale' | 'granted' | 'denied'

Enums

ConnectState

MembersValue
Ok0
Denied-1
Ko-2
UnknowSsid-3
WifiDisabled-4
AppLocalizationPermission-5
SystemLocalizationPermission-6
6.1.0

23 hours ago

6.0.0

18 days ago

5.1.7

2 months ago

5.1.5

8 months ago

5.1.4

8 months ago

5.1.3

10 months ago

5.1.2

10 months ago

5.1.1

10 months ago

5.1.0

10 months ago

5.1.6

8 months ago

5.0.0

1 year ago

0.0.33

1 year ago

0.0.20

2 years ago

0.0.21

2 years ago

0.0.22

2 years ago

0.0.23

2 years ago

0.0.24

2 years ago

0.0.25

2 years ago

0.0.17

2 years ago

0.0.18

2 years ago

0.0.30

1 year ago

0.0.31

1 year ago

0.0.32

1 year ago

0.0.26

2 years ago

0.0.27

2 years ago

0.0.28

2 years ago

0.0.29

1 year ago

0.0.16

2 years ago

0.0.15

2 years ago

0.0.14

2 years ago

0.0.13

2 years ago

0.0.12

2 years ago

0.0.11

2 years ago

0.0.10

2 years ago

0.0.9

2 years ago

0.0.8

2 years ago

0.0.7

2 years ago

0.0.6

2 years ago

0.0.5

2 years ago

0.0.4

2 years ago

0.0.3

2 years ago

0.0.2

2 years ago

0.0.1

2 years ago