- SL4A 教程
- SL4A - 首頁
- SL4A - Android概述
- SL4A - Android架構
- SL4A - Android指令碼層
- SL4A - 架構
- SL4A - Python庫
- SL4A - 開發環境
- SL4A - 配置您的裝置
- SL4A - Android SDK導航
- SL4A - 使用Eclipse
- SL4A - 探索Android API
- SL4A - 構建GUI
- SL4A - 使用Python Facades的實用程式
- SL4A - Python後臺指令碼
- SL4A - 打包和分發
- SL4A 有用資源
- SL4A - 快速指南
- SL4A - 有用資源
- SL4A - 討論
SL4A - Python後臺指令碼
服務是一個元件,它在後臺執行,無需與使用者直接互動。它沒有任何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 小時制來指定時間。示例包括設定鬧鐘、提醒等指令碼。與基於時間的觸發器相反,基於經過時間的觸發器在經過一定時間後執行指令碼。鬧鐘應用程式上的 snooze 選項基於此概念。
廣告