📜  SL4A-使用Python后台脚本编写

📅  最后修改于: 2020-12-07 05:00:52             🧑  作者: Mango


服务是一种组件,它在后台运行,无需与用户直接交互。它没有任何UI(用户界面)。即使应用程序被破坏,该服务也会无限期地在后台运行。

本章介绍在后台执行特定任务的编写脚本。

后台任务

SL4A使脚本可以在终端或后台运行。要在后台启动脚本,请选择看起来像齿轮的图标。该脚本在后台无限运行。但是,可以选择显式关闭此类服务。

在启动脚本上启动

只要设备启动,就会启动这些脚本。 “启动时启动首选项”屏幕是一个应用程序,可让您指定设备的启动首选项。该实用程序支持通过主脚本执行多个脚本。主脚本启动其他脚本。

扳机

触发器定义了一组必须响应一个动作/事件而执行的动作。可以添加或删除触发器。 / sdcard / sl4a / scripts目录允许您选择触发事件时要运行的脚本。可能触发脚本的选项列表包括电池,位置,电话,传感器和信号强度。

基于方向的动作

SL4A使我们可以根据设备的方向和移动来运行脚本。 startSensingTimedAPI用于确定设备的方向和移动。

以下代码片段使用TTS函数在将手机正面朝下放置时通知用户-

import android,time 
droid = android.Android() 
droid.startSensing() 

while True: 
   res = droid.sensorsGetLight().result 
    
   if res is not None and res <=10: 
      droid.ttsSpeak("Device faced down!!") 
   time.sleep(5)

基于位置的动作

图书馆,教堂是您可能经常光顾的地方,您肯定想在那里时让手机保持静音。 SL4A允许您构建脚本来跟踪您的位置并采取特定措施。

基于时间/经过时间的触发器

这些触发器用于在一天的特定时间执行操作。应使用24小时制指定时间。示例包括用于设置警报,提醒等的脚本。与基于时间的触发器不同,基于经过时间的触发器会在经过一定时间后执行脚本。警报应用程序的贪睡选项基于此概念。

基于经过时间的触发器