wifidroid 0.0.1
Module created for Wi-Fi management in Android
Requires Python: >=3
Keywords: wifi android kivy kivymd Android Wi-Fi python-for-android python

## wifidroid 
Is a module created for Wi-Fi management in Android
with Python, wifidroid has methods to connect to Wi-Fi 
networks with WPA / WPA2, WEP and public networks, 
it also has methods to scan Wi-Fi networks, 
turn Wi-Fi off or on, etc.  you can use wifidroid on Pydroid3 
and kivy / kivymd, wifidroid is compatible with most android api's.


## Examples:

```
#Examples from Pydroid3

import kivymd,kivy
from wifidroid.wifi import WifiManager

#Connecting to a Wifi Network (For networks with WPA / WPA2 and WEP security 
you must specify the network name and password, for public networks you must 
only specify the network name)


#Example for WiFi networks with WPA/WPA2 security
wifi = WifiManager()
wifi.ConnectWifiWpa("WifiName","WifiPassword")

#Example for WiFi networks with WEP security
wifi = WifiManager()
wifi.ConnectWifiWep("WifiName","WifiPassword")

#Example for public WiFi networks
wifi = WifiManager()
wifi.ConnectWifiPublic("WifiName")
```
```
import kivymd,kivy
from wifidroid.wifi import WifiManager


#Activating Wifi (To activate it use True and to deactivate it use False
wifi = WifiManager()
wifi.EnabledWifi(True)
```

```
import kivymd,kivy
from wifidroid.wifi import WifiManager


#Scanning WiFi networks
#You must first instantiate the WifiManager class
#To scan Wi-Fi networks you must activate the location.

wifi = WifiManager()
wifi.startScan()
for i in range(wifi.ScanResults.size()):
    #Getting SSID
    ssid = [wifi.ScanResults.get(i).SSID]
    #Getting BSSID
    bssid = [wifi.ScanResults.get(i).BSSID]
    #Getting signal
    levell = [wifi.ScanResults.get(i).level]
    #printing results
    print(ssid[0]+" "+bssid[0]+" "+str(levell[0]))
```
Output:
```
[INFO   ] [KivyMD      ] v0.104.1
[INFO   ] [Factory     ] 184 symbols loaded
ALVAREZ 34:da:b7:d1:bc:75 -74
TURBONETT_0FB532 00:21:94:0f:b5:32 -80
```

```
import kivymd,kivy
from wifidroid.wifi import WifiManager


#Obtaining all the WiFi networks in the surroundings with their respective 
information
#To scan Wi-Fi networks you must activate the location.

wifi = WifiManager()
wifi.startScan()
print(wifi.allScanResults)  
```
Output:
```
[INFO   ] [KivyMD      ] v0.104.1
[INFO   ] [Factory     ] 184 symbols loaded
[SSID: TURBONETT_0FB532, BSSID: 00:21:94:0f:b5:32, 
capabilities: [WPA2-PSK-CCMP][RSN-PSK-CCMP][ESS][WFA-HT], 
level: -50, frequency: 2462, timestamp: 1996213092215, distance: ?(cm), 
distanceSd: ?(cm), passpoint: no, ChannelBandwidth: 1, centerFreq0: 2452, 
centerFreq1: 0, 80211mcResponder: is not supported, Carrier AP: no, 
Carrier AP EAP Type: -1, Carrier name: null, 
Radio Chain Infos: [RadioChainInfo: id=0, level=-50]]
```
These examples can be used in Pydroid3 and in a kivy / kivymd app


## Important
Before using wifidroid make sure your android app 
has the following permissions: CHANGE_WIFI_STATE, ACCESS_WIFI_STATE, 
INTERNET, ACCESS_FINE_LOCATION, ACCESS_COARSE_LOCATION, ACCESS_NETWORK_STATE, 
and also remember that to scan Wi-Fi networks you must activate the location 
(google requirement).




## installation:
```
pip3 install wifidroid
```