SL4A - 使用 Python Facades 的实用程序


基于电子邮件的应用程序

基于电子邮件的应用程序是移动设备中最常见的实用程序之一。可以通过 SL4A Android 门面使用sendEmail API 调用。

该函数采用三个参数 -

  • to_address - 以逗号分隔的收件人列表。

  • title - 表示电子邮件的标题。

  • message - 表示要发送的消息。

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()

用于构建电子邮件程序的 python 库是smtplib。此外,我们还使用了电子邮件库。该库包含许多辅助函数,使我们能够以正确的形式构建消息。mimetypes库帮助我们对消息进行编码。

无线网络扫描仪

以下代码列出了所有可用的 Wi-Fi 接入点 -

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()

通话记录

通话记录的代码如下。

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