Titanium Mobile Intro Series: Fastdev for Android

Abstract cloud computing service background. Technology and data concept. 3D Rendering

Let’s face it: Turnaround time for Titanium development in Android can be very slow. There are many reasons why, including but not limited to:

Because of these, and other reasons, prototyping and testing your JavaScript changes in Android can turn out to be astronomically painful. Beginning in Titanium Mobile 1.7.0, these pains will be a thing of the past due to a new feature I’m introducing today called “Fastdev”.

The idea behind Fastdev is simple: Instead of packaging, building, and deploying your app’s files every time you want to see a change, the application requests those files directly from a server running on your machine. This means that any changes that are made locally are instantly available to your application, and the need for a “stop the world” re-deploy is only necessary in very specific instances. On top of this, Fastdev is bi-directional — meaning you can control the app itself directly with the new titanium fastdev command. Right now, app control is limited to restarting and killing the app, but in the future this could be expanded to work in conjunction with our new debugger support to provide dynamic expression evaluation, and other awesome rapid development features.

And now what you’ve all been waiting for — a Fastdev demo

Currently Fastdev is only enabled for the emulator, but we do plan to enable it for device in an upcoming release. If you like living on the edge, Fastdev is available in the latest builds on our CI Builds page.

To get started, simply open a shell, go into your project’s directory, start the Fastdev server, and re-deploy your project.

In OSX / Linux

$ titanium fastdev start &

$ titanium run --platform=android

In Windows

C:UsersmarshallCodemyApp>start /B titanium fastdev start

C:UsersmarshallCodemyApp>titanium run --platform=android

Full documentation for Fastdev can be found here: Fastdev Reference for Android

1 COMMENT

  1. ‘prototyping and testing your JavaScript changes in Android can turn out to be astronomically painful’

    biggest understatement ever !

    thanks for the implementation of FastDev, it was much needed and is appreciated

  2. Yeah thanks for this – things got better with the snapshot support in Android recently but this will make it even better.

  3. Looks, great. Will you do yhe same for iOS development sp we have one way for both platforms?

    And when is 1.7 scheduled to be released?

  4. Will we be able to style using JSS and see it instantly too?

    Also, do you have any plans for an XML based UI system, akin to Silverlight’s XAML… that would be amazing (even better, if it had a visual designer too). A way to truly keep UI and logic separated.

    I can’t see it being beyond impossibility to convert an XML file containing nested elements into the JavaScript needed.

    Styling apps at the moment is trial and error.

  5. FastDev is most promising way of Developing Titnaium App with Android.But Even then when large number of Components sets on a Single Windows it always extemely slow. In device it is better but of course not UPTO the Mark.CAn u provide me any ways for resolving the issue When I require large number of Components (approx. 25-30) on a single Screen.