SL4A - Arquitetura

SL4A tem três componentes principais. Eles são os seguintes -

  • Intérpretes de script
  • Cliente Android RPC
  • Facades

Neste capítulo, discutiremos mais sobre esses três componentes.

Intérpretes de script

SL4A atua como um host de script. Suporta muitas linguagens de script como Python, Ruby, Lua, BeanShell, JavaScript e TCL. SL4A pode ser estendido incorporando novas linguagens de script dinamicamente, desenvolvendo um novo interpretador SL4A para essa linguagem de script.

Cada script é executado em sua própria instância do interpretador. Conseqüentemente, vários scripts podem ser executados simultaneamente sem afetar uns aos outros.

Cliente Android RPC

Os scripts em execução na instância do intérprete se comunicam com o aplicativo SL4A por meio do Android Proxy RPC Client. O cliente estabelece umRemote Procedure Call (RPC)conexão com SL4A e permite que os scripts interajam com o Android Framework. As fachadas SL4A facilitam essa comunicação. Os dados são enviados comoJSON cargas úteis.

Clientes Android RPC são fornecidos para todas as linguagens de script suportadas. Os módulos do cliente podem ser obtidos no site SL4A emhttps://code.google.com.

Fachadas

A fachada simplifica o acesso do script à API Android subjacente. SL4A expõe a API do Android Framework para scripts por meio de um amplo conjunto de fachadas como AndroidFacade, BluetoothFacade, ActivityManagerFacade, CommonIntentsFacade, etc.

A funcionalidade SL4A oferece uma cesta de funcionalidades ricas como câmera, localização, gerenciador de bateria, reprodutor de mídia, gravador de mídia e muito mais.

Usando SL4A

O sistema SL4A é adequado para os seguintes tipos de tarefas -

  • RAD programming- Com SL4A, é possível usar a abordagem Rapid Application Development (RAD) para criar um aplicativo protótipo rapidamente. Você pode criar um aplicativo Android completo se a viabilidade da ideia for confirmada.

  • Test scripts - Pode ser usado para escrever scripts de teste.

  • Building Utilities - Scripts de utilitários ou ferramentas que executam pequenas tarefas ou automatizam certos aspectos de tarefas repetitivas podem ser construídos usando SL4A.