GV

GeezerVison

The World Wide Web, restored to 800 pixels of glory.

Home|About|Gaming cabinet|Archives|How it works|Starter sites

On this site

  • Sign in
  • More »

This view

  • Original page
  • New address

GeezerVison is showing android.googlesource.com — platform/external/sl4a - Git at Google

android/platform/external/sl4a

Owner: nharold Bug: 26914381

Clone this repo:

Branches

  • main
  • aml_ads_341826060
  • aml_ads_341826300
  • aml_art_341810020
  • aml_ase_341810000
  • aml_cbr_341810000
  • aml_con_341810060
  • aml_doc_341813030
  • aml_ext_341816020
  • aml_hef_341811030
More...

Tags

  • android-vts-14.0_r14
  • android-vts-15.0_r10
  • android-cts-14.0_r14
  • android-cts-15.0_r10
  • android-security-14.0.0_r31
  • android-security-15.0.0_r19
  • android-security-16.0.0_r10
  • android-security-17.0.0_r3
  • android-platform-15.0.0_r21
  • android-platform-14.0.0_r32
More...
  1. 940db02 Set sl4a service as foreground to prevent freezing by Hsiu-Chang Chen · 1 year, 8 months ago main master
  2. 9a8967d clccResponse stays within Bt am: c45d8e6c69 by William Escande · 1 year, 9 months ago
  3. c45d8e6 clccResponse stays within Bt by William Escande · 1 year, 9 months ago
  4. f80029b Update usages of Context#registerReceiver to specify RECEIVER_EXPORTED flag. am: 795341fbec by Ming-Chen Chung · 1 year, 11 months ago
  5. 795341f Update usages of Context#registerReceiver to specify RECEIVER_EXPORTED flag. by Ming-Chen Chung · 1 year, 11 months ago

Scripting Layer For Android

Introduction

Originally authored by Damon Kohler, Scripting Layer for Android, SL4A, is an automation toolset for calling Android APIs in a platform-independent manner. It supports both remote automation via ADB as well as execution of scripts from on-device via a series of lightweight translation layers.

Build Instructions

Due to its inclusion in AOSP as a privileged app, building SL4A requires a system build.

For the initial build of Android:

cd <ANDROID_SOURCE_ROOT>
source build/envsetup.sh
lunch aosp_<TARGET>
make [-j15]

where <ANDROID_SOURCE_ROOT> is the root directory of the android tree and <TARGET> is the lunch target name

Then Build SL4A:

cd <ANDROID_SOURCE_ROOT>/external/sl4a
mm [-j15]

Adding SL4A Builds to Android Builds by Default

  1. If you are not using a custom buildspec, create one as follows:

     cp <ANDROID_SOURCE_ROOT>/build/buildspec.mk.default <ANDROID_SOURCE_ROOT>/buildspec.mk
    
  2. Modify the buildspec to build SL4A as a custom module by editing the line ‘#CUSTOM_MODULES:=’ to ‘CUSTOM_MODULES:=sl4a’:

     sed -i 's/#CUSTOM_MODULES:=/CUSTOM_MODULES:=sl4a/' <ANDROID_SOURCE_ROOT>/buildspec.mk
    

Install Instructions

Run the following command:

adb install -r <ANDROID_SOURCE_ROOT>/out/target/product/<TARGET>/testcases/sl4a/arm64/sl4a.apk

Run Instructions

a) SL4A may be launched from Android as a normal App; or
b) To enable RPC access from the command prompt:

adb forward tcp:<HOST_PORT_NUM> tcp:<DEVICE_PORT_NUM>
adb shell "am start -a com.googlecode.android_scripting.action.LAUNCH_SERVER \
           --ei com.googlecode.android_scripting.extra.USE_SERVICE_PORT <DEVICE_PORT_NUM> \
           com.googlecode.android_scripting/.activity.ScriptingLayerServiceLauncher"

where <HOST_PORT_NUM> and <DEVICE_PORT_NUM> are the tcp ports on the host computer and device.

Generate the API Documentation

From SL4A source directory run this command:

    python Docs/generate_api_reference_md.py

In the Docs directory there should now be an ApiReference.md file that contains which RPC functions are available in SL4A as well as documentation for the RPC functions.

You are visitor 01402503 — GeezerVison does not store the pages you look up.
Best viewed with Netscape Navigator 4.7 or Internet Explorer 6 at 800×600. No cookies required.