These two go hand in hand so thought I’d post them together:
2: BlackBerry’s almost always seem to require a restart when you update or install over an app or library. BlackBerry’s take possibly the longest of all devices to restart. As one forum poster put it: “If I have to reboot mine I go and take a nap or read War and Peace.” This makes testing on the device a wonderful experience.
3: BlackBerrys seem to have a single class loader, but no unique namespace assigned to each app. This means that you can’t have two classes of the same name loaded at once. So if two apps use the same package / class name or if you want to build seperate instances of a shared library for multiple apps…well…you can’t without the pain of refactoring. If you try to load multiple classes of the same name, the device doesn’t complain, it just seems load the first class and quietly forgets about the 2nd one. In practice this can make developing, testing and releasing apps for BlackBerry a nightmare in certain but fairly commen circumstances.
These issues were pointed out as far back as 2006 by worried developers; and now 4 years on, the problem’s still seem to exist.