SL4A - Utilitários que usam Python Facades

Aplicativos baseados em e-mail

Os aplicativos baseados em e-mail são um dos utilitários mais comuns disponíveis em um dispositivo móvel. Pode-se usar osendEmail Chamada de API disponível através da fachada SL4A Android.

Esta função leva três parâmetros -

  • to_address - uma lista de destinatários separados por vírgulas.

  • title - representa o título da mensagem de e-mail.

  • message - representa a mensagem a ser enviada.

import android,datetime,smtplib 
from email.mime.multipart import MIMEMultipart 
from email.mime.text import MIMEText 

droid = android.Android() 
serv = ’smtp.gmail.com’ 
port = 587 
mailto = ’chris’ 
mailfrom = ’charley’ 
pass = ’pass@123’ 

msg = MIMEMultipart() 
msg[‘Subject’] = ’Tes Mail’ 
msg[‘To’] = mailto 
msg[‘From’] = mailfrom 

body = ’This is a test mail!!’ 
msg.attach(MIMEText(body,’plain’)) 

smtpCon = smtplib.SMTP(serv,port) 
smtpCon.starttls() 
smtpCon.login(mailfrom,pass) 
smtpSendmail(mailfrom,mailto,msg.as_string()) 
smtpCon.close()

A biblioteca python que foi usada para construir o programa de e-mail é smtplib. Além disso, usamos a biblioteca de e-mail. Esta biblioteca contém várias funções auxiliares que nos permitem construir nossa mensagem na forma correta. omimetypes biblioteca ajuda com a codificação de nossa mensagem.

Scanner Wifi

O código a seguir lista todos os pontos de acesso Wi-Fi disponíveis -

import android, time 

def main(): 
   global droid 
   droid = android.Android() 
	
while not droid.wifiStartScan().result: 
   time.sleep(0.25) 
	
networks = {} 

while not networks: 
   for ap in in droid.wifiGetScanResults().result: 
      networks[ap[‘bssid’]] = ap.copy() 
		
   droid.dialogCreateAlert(‘Access Points’) 
   droid.dialogSetItems([‘%(ssid)s,%(level)s,%(capabilities)s’ % 
      ap for ap in networks.values() ]) 
		
droid.dialogSetPositiveButtonText(‘OK’) 
dorid.dialogShow() 

if __name__=’__main__’: 
   main()

Registro de chamadas

O código para registros de chamadas é fornecido abaixo.

import android 
droid = android.Android() 
mylog = droid.getConstants("android.provider.Calllog$Calls").result 
calls = droid.queryContent(mylog["CONTENT_URI"],["name","number","duration"]).result 

for c in calls: 
   print c