Taking the Next Step with Your BlackBerry Development, Page 2
Target Audience for BlackBerry Apps
BlackBerry has a bifurcated user base. Many consumers are locked in to using BlackBerry because their business requires it. Different IT groups will enforce different policies for their users; some may allow people to freely download apps, use the network, and so on. Others will restrict their users to access only approved resources.
Some BlackBerry developers write apps for a particular enterprise or for a narrow group of enterprises such as large hospitals. This approach can be ideal because you have a much more controlled set of criteria to support. On the other hand, of course, your potential audience is much smaller.
BlackBerry has been rapidly growing on the non-enterprise front in recent years, and all of its recent phones offer media capabilities and other features to attract regular consumers. These BlackBerry users tend to be fairly savvy and select these devices for their email and Internet capabilities.
BlackBerry supports fairly easy internationalization as well. If you keep localization in mind as you write your app, by externalizing strings and keeping your graphics free of text, you can add support for other languages by simply translating your resource file. This allows you to target your application initially to, for example, English in the United States, and later roll it out to other regions.
A Word on Mobile Policy
To capture the most users, you will need to support all wireless carriers and all devices. This can be fairly straightforward for simple applications, but can add a great deal of work for more complex apps that use a lot of media or integrate with low-level device features.
If you stick with the native BlackBerry UI toolkit, you can write a single COD that looks fine and runs on all devices. This approach may be best for utility applications or business-oriented apps. If you write games or entertainment apps that include a lot of graphics, you should, at the minimum, provide appropriate resources for each device screen size you wish to support. This may mean providing different CODs, but hopefully keeping the actual source code almost identical.
You will, however, need to update the source code if you wish to add support for advanced device features. For example, an app written for a touchscreen BlackBerry Storm running OS version 4.7 will not run on a nontouch BlackBerry Curve running OS version 4.5. Because carriers regularly upgrade operating systems, you may be able to eventually run on all your desired devices; however, to run on the most devices and not design to the lowest common denominator, you will need to create separate builds.
The BlackBerry Bottom Line
BlackBerry devices are powerful and capable, and their large market share makes them difficult to ignore. Consult the following table to help you decide whether and how BlackBerry fits into your mobile development strategy.
|All major carriers supported||Many different devices|
|Large number of users||Slow simulator and debugging|
|Familiar Java development||Corporate environments may interfere with app features|
|Low start-up costs||Limited protection from piracy|
|Strong integration with email and security||Older version of Java|
|Strong ties to corporate environments||Development tools slightly lag Apple's and Google's|
About the Author
Chris King is a senior software engineer at Gravity Mobile. He is the author of "Advanced BlackBerry Development" and a co-author of "Unlocking Android, Second Edition." When he isn't programming or writing for fun or profit, Chris can be found reading, baking, cycling, or hiking throughout the San Francisco Bay Area.