Archive for the ‘Time Tracker’ Category

Experimenting with Symbian development

Sunday, October 14th, 2007

I started playing with the Symbian SDK and Carbide (the IDE) today. Project Two is probably going to be a working time tracker for Symbian. Again, it’s something that I’d use a lot myself. I have a working time tracker already, but it’s very buggy and doesn’t have a lot in the way of features. I want things like automated reporting and multiple clients/projects.

Nokia have done a damn good job with their dev tools. They’re making them easy to get, they’re very well documented and there’s a lot of effort put towards creating a community of developers. Compare with Apple and the iPhone where they are actively discouraging third-party development and people are desperate to develop for the thing anyway. Nokia are doing a great job here and I have to applaud them for it.

I skimmed through one of the tutorials in the Carbide documentation; it’s a basic ‘Hello World’ application. The tutorial takes you through setting up the application, building, running in an emulator and running on the device. The emulator is superb; it looks and acts like an S60v3 phone. It hooks into the Windows TCP/IP stack so you can test networked applications. You can rotate and resize the screen to test the different combinations of physical displays. You can hook it up to a nice IDE-based debugger if you need to get down and dirty with the code. All great stuff.

Hello World on Symbian

You need to pay for the Developer edition of Carbide if you want to do on-device debugging. There’s a free trial. Carbide is Eclipse-based, but I didn’t even realise that I was using a Java application until I started digging around the libraries and discovered that there were Java-style namespaces. There’s an Express edition of Carbide, and it’s fine to use that for commercial development.

There are a few little problems. Something in the build configuration doesn’t handle spaces in paths, so you have to create your project out of the usual Documents and Settings hierarchy. The Symbian and Carbide files are swimming with case-sensitivity issues, but that’s not a problem if you’re on NTFS. Linux support does seem to be fairly good, though.

When it comes time to generate an SIS file so you can install on the phone, the build fails (missing HelloWorld_reg.rsc, but I can see it just fine). I fixed this by creating a new build configuration that duplicated the default Debug settings. I’m not sure why this made a difference.