Unit Aliases and Build Configurations

[Estimated Reading Time: 3 minutes] Over on stackoverflow, Ann Gossard had a question about using an $ifdef in the project (DPR) uses list to use one unit in preference over another, specifically in debug builds. In this situation, it immediately occurred to me that unit aliases might be creatively deployed. What follows is a slightly expanded version of the answer I posted to that question.

VCL Threading – Synchronization

[Estimated Reading Time: 6 minutes] Although I am using Oxygene a lot these days, Delphi remains my tool of choice for Win32 (and x64) development, together with the VCL. Hence this post. A long time ago, in a galaxy far far away, Delphi was a Windows only development tool. 16 was the number of the bits with which it was concerned, and 1 was the number of threads in the process (though it was not called a thread). It was a simpler time. Then the bits were doubled and the number of threads did multiply, but it was important still that some things happened only on the original thread, though for a time a blinded eye could be turned since – no matter the plurality of threads – with only one piece of silicon to share, only one thread could be running at any one time. Yet lo, TThread.Synchronize() was conceived.

What’s In a Number .. ?

[Estimated Reading Time: 4 minutes] Last week I picked up a Nokia 520 Windows Phone for what I consider to be an absolute bargain price (well under the NZ$299 RRP) specifically as a development handset to allow me to explore the Windows Phone support offered by Oxygene. I’ve only just started down this road but have already come across a couple of things that might help people who might be scratching their heads (as I was) when getting started.

Getting Published in the Play Store (Google Apps)

[Estimated Reading Time: 2 minutes] Well, this went far more smoothly than I had anticipated. At the XE5 World Tour event in Auckland, Brian Hamilton, creator of the iWD app, told us that getting his approved took about a week (if I recall correctly), and he had to submit a video showing how his app worked, so I was anticipating a couple of days at least to get my widget published. A couple of hours is all it took !

Developing an AppWidget – Part 5

[Estimated Reading Time: 7 minutes] In my previous post I explained how I believed I had solved a problem with my widget, only to discover that it created a different problem in the process. I had believed that IntentService based services were long-lived, but in fact this is not the case. However, the change remains valid for solving the problem of my update alarm surviving device sleep, leaving only the question of how to refactor the behaviour that using an IntentService had broken.

Developing an AppWidget – Part 4

[Estimated Reading Time: 3 minutes] Keep On Running… Some may have noticed that I updated my previous post with a footnote describing an issue with my battery widget not resuming it’s updates after the phone went into (and came out of) deep sleep. I got to the bottom of that and can now happily report that my widget seems 100% reliable and the solution is not contributing to any additional battery drain. This is what I did…