2011 September | Titanium Development

Archive for September, 2011

This Week in Titanium Mobile Development: 26 Sep 2011

This is all the Titanium Mobile development news I’ve gathered from the Twittersphere and Interwebs for the past week.

News

A quiet news week with codestrong happening the beginning of the week. Appcelerator will be posting videos all the sessions for those of us who couldn’t attend. Check out the codestrong website for details. The live blogs are also available here.

DealWallet was the winner of the hackathon!

The big announcement coming out of codestrong was the Mobile Marketplace for all your development needs. TechCrunch even reported on it.

ForgedUI announced a beta of a visual drag-and-drop interface that allows for quick screen design. You can sign up for the beta at their website.

Tips

Damien Laureaux gave a tip on this blog of how to move part of your Android application to the SD card.

Kevin Whinnery continues Forging Titanium with a tutorial on how to integrate through a RESTful web service API using Twilio, a cloud-based service for adding telephony features to applications, as an example. I love that he implements the WUPHF application from The Office.

Boydlee continues sharing with the community with a bit.ly url shortener module for Titanium (iOS only)

Titanium Ninja give a followup to his posting last week explaining how his FastDev for iOS works. Cool stuff.

John Kalberer add some more to his MVC framework – this time talking about routing.

I posted some demo code and a video on improving perceived performance with a large number of image views in iOS.

Apps

The only new app I came across this week was Kelloggs Fibre Tracker.


If you’ve got any news, tips, or apps I’ve missed, please leave them in the comments below!

Jeff

Date posted: September 27, 2011

2 comments - Latest by:
  • Damien Laureaux Hello Jeff! Thank you for the mention of my post "Move part of your Android application to the SD card" :) Your ...
  • David La Motta We had the opportunity of being at Codestrong last week, where we talked to a lot of people about a ...
Top

Improving perceived performance with a large number of image views in Titanium Mobile

Last week I gave a presentation on Appcelerator Titanium to the Melbourne Cocoaheads group. These are serious iOS developers so I didn’t expect to make any converts.

After I presented, one developer came up and asked to see an app created in Titanium. I showed him the app I did for the ‘What Should I Wear’ website. After the app opened, I tapped on my second tab. The window associated with the tab had a gallery of 24 image views with ‘bigish’ images. After I tapped, it took about 2-3 seconds for the window to fully appear. It looked like nothing was happening in the app while the window was appearing.

“That’s not a great first impression” he said.

He was right. Building apps isn’t just about providing functionality – it is about providing a great user experience. In the iOS simulator you couldn’t tell there was a lag, but on the device you could really feel the delay.

I set out this week to figure out how to make the app more responsive when it is first opened. I tried four different things.

  1. Initially, I had the window in its own js file. I set the image property on all the image views in the base of the js file. When tapping on the tab, the window title appeared right away, but the area in the window was blank. Then all the images appeared all at once after a couple seconds. Not good.
  2. Using what I leaned in ‘forging titanum’, I refactored the app to a single context. I still set the image property when creating the window. When tapping the tab now, nothing happened for 2-3 seconds. Then the window appeared with all the images loaded. This was worse!
  3. I stayed with the single context, but moved setting the image properties to the ‘open’ event of the window. The window appeared quickly, then the images started appearing quickly. Not all at once, but down the page.  This looked and felt good.
  4. This time, I set the image property on the ‘focus’ event of the window. This behaved almost the same as the previous example, but seemed a little quicker. It will also provide more options when I update the image properties in the background. This is what I will use in the next version of my app.

Note: This is only testing the first time the window was opened. In every example, the window and images instantaneously appeared subsequent times you tapped on the tab. Also, I am targeting iOS only so that is all I tested.

Here is a video of the four different methods on a 3GS from a sample app I created. I added a sound effect when the ‘tap’ occurs.

As a developer, there are always different ways of doing things.  Only through testing (on the actually device) can you really polish an app to make if feel the best for the user.

Date posted: September 26, 2011

0 Comments
Top

Appcelerator Titanium Kitchen Sink Android Emulator FAIL: INSTALL_FAILED_OLDER_SDK

I was attempting to get the Kitchen Sink running in the Android Emulator and kept getting the error INSTALL_FAILED_OLDER_SDK. What the? From reading the Q&A, I knew that I need to be running on Android 2.1, but every virtual machine I created was 1.6? It turns out, I was looking in the wrong place to change it.

I kept opening the ‘configure…’ link in TiApp.xml and updating the Default Android SDK. This was the wrong place.

After banging my head against the wall for a while (and cleaning the project, restarting, etc.) I finally found where I should be looking:  Run Configurations

Once I found this, you can see where to set the options:

Run it, and you are good to go!

I hope that helps, and this post gets some SEO love to help people who are searching.

Date posted: September 20, 2011

2 comments - Latest by:
Top
1 2 3 Page 1 of 3