Welcome!

Welcome to the official BlackBerry Support Community Forums.

This is your resource to discuss support topics with your peers, and learn from each other.

inside custom component

Java Development

Reply
Developer
Posts: 90
Registered: ‎02-27-2009
My Device: Not Specified

VirtualKeyboard Issues

Hi, I'm developing a blackberry application that will run on both Bold, Storm, and Curve. My goal is to have a single installable cod file which can be

deployed to any of these phones. A portability issue has come up. It seems that I cannot refer to VirtualKeyboard in any way shape or form unless

the app is being loaded on the Storm. On any other phone, I get the following message:

 

Class net.rim.device.api.ui.VirtualKeyboard not found

 

This even happens when referencing the VirtualKeyboard.isSupported() static method which seems very counter intuititive since that's the only way

that I've seen to detect whether the keyboard is available.

 

Any help would be appreciated.

 

Travis

Developer
Posts: 5,339
Registered: ‎09-20-2008
My Device: ***
My Carrier: ***

Re: VirtualKeyboard Issues

[ Edited ]

Hi, Travis.

 

As I understand you're a newbie, in this case take a look at this link.

 

Regarding your questions.

 

Every device has a device operating system (device software).

 

This operating system has a version number, can be checked on device via Options - About.

 

This version along with RIM OS version number also indicates RIM API version number.

 

I.e if RIM OS version is 4.2.0.55 then RIM API version supported by this device is RIM API 4.2.0.55 (or older versions).

 

JDE version also indicates RIM API version that is using to compose/compile the applications (cod files).

 

Devices with keyboards work with device OS versions up to 4.6

 

BB Storm device os version is 4.7

 

So, if you compile your application with RIM API 4.7 (for Storm) it cannot run on devices which support older RIM API.

 

Just because older api just does not know about new classes introduced in new api (for storm).

 

If you want to have one cod file for the most possible device models - then use JDE version 4.2

 

Another (recommended) option is making different cod files for different models.

 

To achieve this you can use Ant scripts and BB Ant Tools (preprocessor task) in Eclipse or in Netbeans with one set of source files.

Message Edited by tbilisoft on 20-05-2009 01:08 PM
Developer
Posts: 5,339
Registered: ‎09-20-2008
My Device: ***
My Carrier: ***

Re: VirtualKeyboard Issues

Also please note that applications compiled with JDE older than 4.7 run on Storm devices in compatibility mode.

 

In this mode device translates touch events to keyboard and trackball events and sends it to your application.

 

There is a chance that it may cause some issues with your application user interface.

 

 

Developer
Posts: 90
Registered: ‎02-27-2009
My Device: Not Specified

Re: VirtualKeyboard Issues

Thanks for the reply. Looking now, I see that Storm is the only phone running 4.7. For some reason, I assumed the 8900 Curve was running 4.7 as well. I guess the only alternative for the moment is to deploy using separate cod files.

 

Thanks,
Travis

Developer
Posts: 5,339
Registered: ‎09-20-2008
My Device: ***
My Carrier: ***

Re: VirtualKeyboard Issues

As far as I know 8900 devices are running RIM OS 4.6.x

 

But in any case note that the most keyboard devices have device os older than 4.7

New Developer
Posts: 36
Registered: ‎10-29-2009
My Device: Not Specified

Re: VirtualKeyboard Issues

How to build cod file with ant sript.  I have preprocessors in my blackberry code.