react-native-wifi-light
v0.2.3
Published
Wifi iteractive for react-native
Downloads
14
Readme
react-native-wifi-light
Wifi iteractive for react-native
Installation
npm i react-native-wifi-light --save
iOS
You need use enable Access WIFI Information
, with correct profile. Hotspot Configuration
is required in order to connect to networks.
iOS 13
You need put "Privacy - Location When In Use Usage Description" or "Privacy - Location Always and When In Use Usage Description" in Settings -> info
Android
ACCESS_FINE_LOCATION
permission
Since Android 6, you must request the ACCESS_FINE_LOCATION
permission at runtime to use the device's Wi-Fi scanning and managing capabilities. In order to accomplish this, you can use the PermissionsAndroid API or React Native Permissions.
Example:
import { PermissionsAndroid } from 'react-native';
const granted = await PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
{
title: 'Location permission is required for WiFi connections',
message:
'This app needs location permission as this is required ' +
'to scan for wifi networks.',
buttonNegative: 'DENY',
buttonPositive: 'ALLOW',
},
);
if (granted === PermissionsAndroid.RESULTS.GRANTED) {
// You can now use react-native-wifi-reborn
} else {
// Permission denied
}
Usage
import Wifi from "react-native-wifi-light";
componentDidMount(){
PermissionsAndroid.request(
PermissionsAndroid.PERMISSIONS.ACCESS_FINE_LOCATION,
{
title: 'Location permission is required for WiFi connections',
message:
'This app needs location permission as this is required ' +
'to scan for wifi networks.',
buttonNegative: 'DENY',
buttonPositive: 'ALLOW',
},
)
.then((res) => {
if (res === PermissionsAndroid.RESULTS.GRANTED) {
Wifi.onScanResults = (mess) => {
this.listWifi = JSON.parse(mess.data);
console.log(this.listWifi);
this.setState({
isUpdateView: !this.state.isUpdateView,
});
};
Wifi.getWifiList();
} else {
}
})
.catch((err) => {});
}
Methods
The api documentation is in progress.
Android & iOS
The following methods work on both Android and iOS
getWifiList(): Promise<Array<Any>>
Returns a promise that resolves a list of available Wifi SSIDs.
startScan(): Promise<Array<Any>>
Similar to getWifiList
but it forcefully starts a new WiFi scan and only passes the results when the scan is done.
Event
onScanResults: callback(data: any)
The event wil be executed when list wifi is ready
Contributing
See the contributing guide to learn how to contribute to the repository and the development workflow.
License
MIT