SL4A - 架構



SL4A 有三個主要元件。它們如下所示:

  • 指令碼直譯器
  • Android RPC 客戶端
  • 外觀(Facades)

在本章中,我們將詳細討論這三個元件。

指令碼直譯器

SL4A 充當指令碼宿主。它支援多種指令碼語言,例如 Python、Ruby、Lua、BeanShell、JavaScript 和 TCL。透過為該指令碼語言開發新的 SL4A 直譯器,可以動態地擴充套件 SL4A 以合併新的指令碼語言。

每個指令碼都在其自己的直譯器例項中執行。因此,多個指令碼可以同時執行而互不影響。

Android RPC 客戶端

在直譯器例項中執行的指令碼透過 Android 代理 RPC 客戶端與 SL4A 應用程式通訊。客戶端建立與 SL4A 的**遠端過程呼叫 (RPC)** 連線,並允許指令碼與 Android 框架互動。SL4A 外觀(Facades)促進了這種通訊。資料以**JSON**有效負載的形式傳送。

每個受支援的指令碼語言都提供了 Android RPC 客戶端。客戶端模組可以從 SL4A 網站獲取,網址為 https://code.google.com

Scripting Layer Android

外觀(Facades)

外觀(Facade)簡化了指令碼對底層 Android API 的訪問。SL4A 透過一套廣泛的外觀(Facades)如 AndroidFacade、BluetoothFacade、ActivityManagerFacade、CommonIntentsFacade 等,將 Android 框架 API 公開給指令碼。

SL4A 功能提供了一系列豐富的功能,例如相機、位置、電池管理器、媒體播放器、媒體錄製器等等。

使用 SL4A

SL4A 系統適合以下型別的任務:

  • **快速應用開發 (RAD)** - 使用 SL4A,可以使用快速應用開發 (RAD) 方法快速建立原型應用程式。如果想法的可行性得到確認,您可以建立完整的 Android 應用程式。

  • **測試指令碼** - 它可用於編寫測試指令碼。

  • **構建實用程式** - 使用 SL4A 可以構建執行小型任務或自動化某些重複任務方面的實用程式指令碼或工具。

廣告

© . All rights reserved.