Scripting Layer for Android Tablet Remix - Release announcement

Small figure carrying a memory module*** UPDATE: The second version of this app has now been released. This page has been updated with the new version. *** A couple of days ago on the android-scripting Google group I was very pleased to announce the first release of the Scripting Layer for Android Tablet Remix also known as SL4A Tablet Remix. As the name implies this is a version of the Scripting Layer for Android that has been adapted for Android Honeycomb tablets, especially the Asus EEE Pad Transformer. There is still a lot of work to do on this app and a lot of improvements that can be made, but at last in is in a usable state and if you enjoy programming or want to learn about it this could be for you. The app builds on the fantastic work done by the contributors to the original SL4A project and extends functionality to being the Honeycomb look and feel to the app as well as extending the programming environment provided by SL4A to take advantage of some of the great features of the latest Android tablets.

Screenshot of the Script Manager in SL4A Tablet Remix

Change list

This release brings the following new features to SL4A:

  • Compatibility with the Asus EEE Pad Transformer hardware keyboard dock (thanks to Lorant Kurthy for publishing the source code to his version of ConnectBot which made this possible)
  • Honeycomb look and feel
  • Support for dock battery on the Asus EEE Pad Transformer (thanks to Artiom Chilaru for publishing the source code to the Dual Battery Widget which made this possible)
  • Added front camera support to the cameraCapturePicture(), cameraStartPreview() and webcamStart() functions
  • Altered the script manager search to work with Honeycomb
  • Added new modes to recorderStartVideo() to support DVD and high definition (720p) video formats
  • Various fixes for compatibility issues with Honeycomb and the EEE Pad

The source code is available from http://code.google.com/r/liamgreenhughes-sl4a-tf101/.

Known Issues

  • The Triggers functionality is currently quite unhappy and might crash
  • You can't use the front camera with recorderCaptureVideo() or recorderStartVideo()

Installation

To get started install the attached APK file (you will need to go to SettingsApplicationsUnknown sources to enable installation of apps from outside the Android Market). When you start up SL4A for the first time you will notice that no languages are installed so you need to tap ViewInterpreters towards the top right of the screen and +Add to pick the languages you would like to use. Python and PHP are good choices as I will be writing more about SL4A and these languages soon!

When the language pack has downloaded, click on the download notification on the bottom right of the screen and install the package. You will then probably need to click on Open when Android tells you it has been installed and click on an Install option inside the app to get it to download any files it needs that are related to that language. When you return to SL4A you should see some example scripts are available that you can run, adapt and modify. To create a new script tap +Add and select the type you would like. If a language has a shell of its own you can get to it by tapping ViewInterpreters and picking it from the list.

A script being edited in SL4A Tablet Remix

The new version of the app still works with the language packs used by the original SL4A so you can choose to program in Python, PHP, Perl, Beanshell, JRuby, Rhino, Lua, Javascript or in a shell - whichever is your favourite. You can add many libraries to these languages to extend functionality and you also get an API browser where you can find the right commands to access hardware features and more. When you find the right one tap and hold to insert the call into your script.

SL4A Tablet Remix is not really an environment for creating fully blown mobile "apps" as such, but it is a powerful and fun way to create programs for your Android tablet without the need for another machine. If you are just starting out with learning programming then using SL4A with Python could be a perfect choice. You get a simple, uncluttered environment in which to learn your new craft, you can also fairly quickly start working with the features of your tablet such as the GPS, webcams and the sensors. More experienced programmers might like it as a way to explore the capabilities of their devices and this new form factor in computing. Lots of tutorials are available from the SL4A Wiki to give you inspiration.

I hope that many people will have a lot of fun from this app and that it can help people to learn programming too. In the future I hope to make further improvements and new versions of the app. In the longer term there is a possibility that the changes in this app will be merged with the main version, which would be great. I have also been thinking about the possibility of porting this to Google TV as well. For now though enjoy the app and let me know how you find it and what you build with it.

Have fun!


Photo: Computer Testing by Kodomut

AttachmentSize
ScriptingLayerForAndroidTR2.apk926.15 KB

Comments

Exactly what i was looking for. Well done work. It's running smoothly in the iconia as well. Thanks a lot

I've been waiting for a working version of SL4A for my xoom. Excellent work.

BAJ

Great article. Was trying to apply it to my Smart TV but deploying to this platform seems to be very different than internet@tv ... do you have any information on how to deploy to Smart Hub?

A brief followup. I installed on my Wifi Xoom. I'm not sure which edition of HoneyComb it's running now (several updates have been done). SL4A TR with Python works like a champ. I briefly played with the MediaPlayer facade with no problems.

The one item that seems to be missing is the FullScreenUI facade. Any chance of getting an update with that included?

Great work. Coding on a large screen is really helpful.

BAJ

Hi, great to hear that this is working for you! I've not had much of a chance to work on this more recently, but I have plans for a second release of this where I can roll in some of the newer features of SL4A and also make it much closer to the main branch. So yes, there is a chance of getting the FullScreenUI Facade in it!

Look forward to it, Liam. Thanks for your efforts.

BAJ

This has been so helpful for me to get started with Android programming. Keep up the good work!

Add new comment

Comments are always very welcome, but please note the following:
  • Sadly due to the high number of spam comments recently all comments are now manually moderated. You comment will therefore not appear on the site instantly.
  • Comments on this web site are monitored for spam using Mollom. By posting a comment, you accept that your message and other personal details about you will be analysed and stored for anti-spam and quality monitoring purposes, in accordance with Mollom's privacy policy.
  • Please use your own name not a company or website name to submit comments. Your comment will be removed if you don't do this.
  • All links in comments will be marked with a no follow attribute. That means posting a link to your site here won't help your search engine rankings.
  • By submitting a comment you agree that your comment can be reproduced under the same licensing terms as the rest of the content on the site.
  • Comments can be removed at any time without explanation, but won't be removed just because you disagreed with something I said.