Plugin Flutter which can handle WiFi connections (AP, STA)
Becareful, some commands as no effect on iOS because Apple don't let us to do whatever we want...
Description | Android | iOS |
---|---|---|
Enabling / Disabling WiFi module | ❌ | |
Getting WiFi status | ✅ | ❌ |
Scanning for networks, with "already-associated" flag | ✅ | ❌ |
Connecting / Disconnecting on a network in WPA / WEP | ✅(5b) | ✅(1) |
Registering / Unregistering a WiFi network | ✅(5c) | |
Getting informations like : | ✅ | |
- SSID | ✅ | ✅ |
- BSSID | ✅ | ❌ |
- Current signal strength | ✅ | ❌ |
- Frequency | ✅ | ❌ |
- IP | ✅ | ❓(4) |
✅(1) : On iOS, you can only disconnect from a network which has been added by your app. In order to disconnect from a system network, you have to connect to an other!
❓(4) : I think there is a way to get the IP address but for now, this is not implemented..
- a. Enable/Disable Wifi Module is deprecated and will always fail (except DO, PO and system apps) [docs].
- b. For Connecting to Wifi, WEP security is deprecated and will always fail, also the network will be disconnected when the app is closed (if permanent network is required(Check
⚠️ (5c)), use "Register Network" feature) [docs)]. By default the connection would not have internet access, to connect to network with internet userwithInternet
which is a different API underneath (this API will not disconnect to network after app closes) [docs]. - c. Registering Wifi Network, will require user approval - and the network saved would not be controlled by the app (for deletion, updation, etc) [docs];
Description | Android | iOS |
---|---|---|
Getting the status of the Access Point (Disable, disabling, enable, enabling, failed) | ✅ | ❌ |
Enabling / Disabling Access Point | ✅ | ❌ |
Getting / Setting new credentials (SSID / Password) | ✅ | ❌ |
Enabling / Disabling the visibility of the SSID Access Point | ✅ | ❌ |
Getting the clients list (IP, BSSID, Device, Reachable) | ✅ | ❌ |
Handling the MAC filtering | 🆘 | ❌ |
For now, there is no way to set the access point on iOS...
To be able to build with Xcode, you must specify use_frameworks!
in your Podfile to allow building Swift into static libraries.
Don't hesitate and come here, we will be happy to help you!