SL4A - 使用 Python Facades 的实用程序

基于电子邮件的应用程序

基于电子邮件的应用程序是移动设备中最常见的实用程序之一。可以使用通过 SL4A Android Facade 提供的 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 库有助于对消息进行编码。

Wifi 扫描仪

以下代码列出了所有可用的 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