API Development

Onward to 1.5 and Android awesomeness

Since 1.4, we’ve been hard at work on the next release of Titanium, 1.5, scheduled in September. In 1.5, Android is become the golden child and it’s getting a lot of love and attention and some really awesome new capabilities and fixes. I’ll outline some of the specific things that will land in 1.5 (some are already available in master or on our android_native_refactor branch).

For iOS, here’s generally what we’re working on:

Full background job support for iOS4. You’ll be able to create one or more JS files that will run when your application goes to the background.

Local Notification support. You’ll have full support for local notifications. For example, when you go in the background, you might want to schedule a notification to fire that some event occurred to alert the user.

Improved Split View in iPad. The Apple split view implementation is plain broken. It’s just not designed like everything else in the SDK and we’ve ditched it in favor of using Matt Gemmell’s awesome MGSplitViewController. That solves like all the bugs and provides a bunch of new capabilities we were limited with in Apple’s implementation.

Fixed numerous rotation issues. We’ve fixed numerous rotation issues with iPad. This has been a pain and very complicated but I think with 1.5 all the known issues are squashed.

Table View improvements. We’ve fixed a number of performance improvements around cell/subcell redrawing that was unnecessary that is improving performance.

For Android, here’s what’s coming:

Major memory, footprint and execution speed. We’ve greatly improved the memory footprint, startup speed and bundle size and general speed improvements.

Native support for Intents and Activities. You can now call third-party activities/intents from Android as well as your Titanium apps can register fine-grain activities/intent filters and work like a first-class citizen in Android.

Support for background services. Very similar to iOS above.

Improved Native pickers. We’re now support much nicer, iPhone-like, native pickers. You can still use the existing (and ugly) Android pickers or use some cool new ones.

Image Caching. We now have a native image cache like iOS that helps cache often used remote images.

Mixed Density Images. We are improving support for using the various image densities within Titanium.

Improved animations. We’ve fixed a number of animation issues and improved the functionality.

In general:

Localization/Internationalization. We are adding the new i18N framework natively in the SDK. You’ll be able to fully localize your application in a generic since and then we’ll automatically create the platform-specific localization resources, etc.

Bug fixes. Many, many reported bug fixes and overall improvements based on your feedback.

From a timing standpoint, we think we probably have at least 2 more weeks worth of development before code complete so this will put the release sometime in September.

You can always continue to follow our development on Github at https://github.com/appcelerator/titanium_mobile/commits.

Thanks for everyone’s continued support and excitement around the platform. It’s amazing to see all the cool applications that you’re creating (over 3,000+) and how fast new apps are launching on the Apple iTunes store or Android Marketplace (40+ per day). Code strong!