And no-one’s here. Is this a good thing? Probably. Now if there’s no discussion it’s not my fault. I prepared something, it’s probably too short and to lecturery. Hopefully it meets the criteria sufficiently that I don’t fail the subject.

Ok, went reasonably well. Audience got much bigger, must have been excited. Didn’t generate a lot of discussion about mobile security but probably did the job.

Now that this is over I can actually continue to do some work on the actual coding. There’s still plenty to do. Have to fix animations, and figure out how to manipulate the calendar from the phone. I don’t have any other subjects to work, so I guess, I’ll get it done. Of course this assumes it’s actually possible. Otherwise I might have to edit the android sdk. I hope it doesn’t come to that as I’ve been having enough trouble just checking it out.

First of all, you may wish to have a look here, and setup a memory card in your project directory called my128MbCard if you want to use any of the scripts or have a look at the TraceViews of our application.

Starting the emulator from eclipse to the Android Home Screen: 1 minute 50 seconds+

Starting the emulator from the command line to the Android Home Screen: ~30 seconds.
(using this command: emulator -avd 1.5sdcard -skin G1 -sdcard my128MbCard)

That’s over 3 times faster!

Anyways give it a crack, YMMV.

I’ll be uploading a few shell scripts to the github repository that:

  • Start the emulator
  • Install the application to the emulator or device and then runs it
  • Uninstall the application from the emulator or device

Note: If you deploy using Eclipse, then uninstall using the command line, then try to deploy again from eclipse, you may encounter the situation where eclipse thinks the application is installed, but it isn’t, so you will enjoy the following infinite loop:

[blah] Application already deployed. No need to reinstall.
[blah] Starting activity com.candlelightproject.lifemap.LifeMap on device
[blah] ActivityManager: Starting: Intent { comp={com.candlelightproject.lifemap/com.candlelightproject.lifemap.LifeMap} }
[blaht] New package not yet registered with the system. Waiting 3 seconds before next attempt.

Simply do a Project->Clean in eclipse, and the deploy will work again.

I’m going to have a play around with TraceView and see if there are any places we can look to optimise in our current application as it stands.

Animation

May 8, 2009

Working this week on developing animations for our app has an been an interesting proposition. It seems to be impossible to specify your own animations by repainting the canvas, the way I’ve done it in the past with jpanels. Instead android provides a number of animation classes that all seem behave a bit strange, especially in the context of our app. Doing simple 2D graphics with fancy transitions doesn’t seem to be what these android’s animations were made for.

There certainly wasn’t anything for moving an object around a circle until I got around to extending the animation class. But even after writing my own animation, and it seems to do the right thing, it still seems to be offsetting my objects and it never resizes them properly. This is probably because animations manipulate the view’s canvas after it’s been drawn instead of resizing and moving the view itself and hence 9-patches aren’t resized properly.

Oh well, considering the progress I’ve made so far with not too much work, I’m sure I can resolve the jerkiness that takes place at the end of a transition, as it goes from the scaled, translated canvas to a resized, moved view. The obvious goal is to get the two be identical before the animation finishes. I don’t think that will be too hard.

Mid Semester Review

May 2, 2009

Overall, I feel our mid semester review went pretty well. I wonder if trying to stick to the time limit hurt us, but I imagine the only thing that let us down, was our lack of actually research into what was out there. Given the quick switch we had to make about four weeks in, we lacked the time that the other groups used to do more research.

Saying that, I don’t think it will hurt the quality of our final product, but it would have been nice to have been able to answer questions with confidence that this indeed would be useful app for people and that it is original. I’m pretty confident of both factors though.

Kim’s question about whether there interest for such an app, did make me think though. Especially since I had dismissed both of the other apps as being irrelevant to me personally. Although remote access to TiVo is pretty cool.

I wonder if I’m the only one who thought the guest lecturer’s company has an evil business plan.