En esta sección se aborda el tema del uso de librerías nativas de android y de java, llamadas desde código python, lo cual permite tener acceso a los diferentes sensores con los que cuenta nuestros dispositivos móviles, como a su vez también permite tener control sobre el Wifi en el cual se centrara este material, para comenzar la practica puede utilizar el siguiente material:
#*-*coding:utf-8*-*
#Desarrollado por Diego Alberto Parra Garzón
#Bogotá D.C., Colombia
#noviembre 2017
#Esto es software libre con licencia GPL3
#Libreria WIFI scanner
#[email protected]
#qpy:kivy
import jnius
from kivy.utils import platform
from jnius import autoclass, cast
class Wifi_List_O:
def __init__(self):
Context = autoclass('android.content.Context')
PythonActivity = autoclass('org.renpy.android.PythonActivity')
self.WifiManager = autoclass('android.net.wifi.WifiManager')
self.wifi_service = PythonActivity.mActivity.getSystemService(Context.WIFI_SERVICE)
def EscanaerRedes(self, *args):
try:
self.wifi_service.startScan()
self.wifiList = self.WifiManager.getScanResults()
except:
pass
variables_wifi = []
for i in range (0, self.wifiList.size(), 1):
lst = self.wifiList.get(i).toString()
variables_wifi.append(lst)
try:
Long_var_wifi = len(variables_wifi)
print Long_var_wifi
REDES = []
lol = []
lolo1 = []
lolo2 = []
lolo3 = []
for i in range (0, Long_var_wifi, 1):
tor = str(variables_wifi[i])
lol = tor.split(',')
print lol
lolo1 = lol[0].split(' ')
SSID = lolo1[1]
lolo2 = lol[1].split(' ')
BSSID = lolo2[2]
lolo3 = lol[4].split(' ')
dBi = lolo3[2]
lista = str(SSID) +" "+ str(BSSID) + " " + str(dBi)
REDES.append(lista)
print REDES
print REDES[1]
self.REDES = REDES
var = []
print "ACA esta lo que devueve el array " + str(var)
self.REDES_WIFI_O()
except:
pass
def __del__(self):
print "Destructor de la clase WifiList_O"
def REDES_WIFI_O(self):
var = []
var = self.REDES
print "Esto es el array que devuelve la clase WIFILIST_0: "
print var
return var
wifilist = Wifi_List_O()
wifilist.EscanaerRedes()
var = []
var = wifilist.REDES_WIFI_O()
print var