Datasheet
27
Chapter 1: Gathering What You Need to Develop BlackBerry Apps
Understanding BlackBerry Application
Development Challenges
If BlackBerry programming were easy, you wouldn’t need this book. So you
need to be prepared for the inevitable difficulties that will appear. Sometimes
these challenges are caused by the BlackBerry device or its OS, and you will
have to “code around” these types of problems. Sometimes you will discover
you have coded yourself into a corner: for example, a particular decision of
how to code something at an earlier moment has forced responsibilities upon
your code further down the development path.
The following sections describe the challenges that you’ll face in writing
BlackBerry applications.
Choosing an OS version
You have to decide what version of the BlackBerry OS your application will
execute on. This is the most significant decision you must make because it
will influence and constrain your application’s capabilities.
RIM produces new BlackBerry devices — and, therefore, new BlackBerry OS
versions — several times per year. In 2009 alone, the following new devices
were released:
✓ Storm2
✓ Bold 9700
✓ Curve 8900
✓ Tour
Each of these devices came with its own new version of the BlackBerry OS.
OS versions are usually represented by four numbers separated with dots,
such as 4.7.0.113. The first two numbers are usually the most important;
they are the major and minor version numbers. The difference in behavior
between OS 4.6.0.49 and OS 4.6.0.75 is likely to be minor although I have
come across times when such a version upgrade has fixed a bug that my
code encountered.
It’s true! Sometimes you will discover that your perfectly debugged and
packaged code comes across a bug in the OS!
The differences between minor OS versions — say, OS 4.6 versus OS 4.7 —
will likely be significant. Of the two just mentioned, OS 4.7 is interesting
because it’s the only OS that runs on the BlackBerry Storm and Storm2
devices. What’s interesting about these devices? Two things:
05_467114-ch01.indd 2705_467114-ch01.indd 27 8/30/10 1:05 PM8/30/10 1:05 PM