2

I am looking for a screen shot tool that I can use to capture screens from my BlackBerry Tourch 9850. I have tried using the included JavaLoader utility with my SDK but I receive "Retrieving screen <active> data ... Error: buffer too small" errors. I have also tried using the BBScreenShooter v1.67 (I think this is the latest version) but it fails to capture the screen, then crashes.

I need the tool to create a user manual for some software we're developing for BlackBerrys and, as they say, "a picture is worth a thousand words."

If nothing else, perhaps someone knows how to address the small buffer problem with JavaLoader?

BonanzaDriver
  • 6,411
  • 5
  • 32
  • 35

3 Answers3

2

With the help of Mark Sohm (thanks Mark ... your help is very much appreicated) the solution was discovered: You have to use the JavaLoader from the v7.0 SDK on devices that have the higher screen resolutions ... the Tourch 9850 is 800 x 480. Versions 6 and lower do not have an implementation that will support the larger buffer required to grab the addition bytes - makes sense.

Although I have not tested it yet it's certainly possible that the BBScreenShooter would work also knowing this .... BBScreenShooter uses JavaLoader to handle the "heavy lifting" with the handset.

BonanzaDriver
  • 6,411
  • 5
  • 32
  • 35
  • Thanks for this - I just ran into the same problem trying to take screen captures from OS 7 devices. I assumed it was something like this, since the new screens are much larger in terms of pixels. – MusiGenesis Oct 07 '11 at 15:31
  • 1
    MusiGenesis ... FYI: http://stackoverflow.com/questions/7694964/blackberry-screen-shot-utility-torch-9850-a-how-to-guide-on-creating-your – BonanzaDriver Oct 08 '11 at 05:29
1

Try this way:

  1. Create an application that runs on device startup and listens for GlobalEvents (via GlobalEventListener implementation)
  2. Run this application in JDE or Eclipse and monitor what global events are fired when you press convenience keys on your blackberry device. Write event guids down and find out a guid that corresponds to a convenience key, when it is pressed.
  3. Modify the application created at step 1 to use Display class and invoke screenshot() method of this class when a convenience key is pressed.
  4. As screenshot has been created save it to the device filesystem via BlackBerry FileConnections API. After that you can copy these pictures to your desktop computer when device is connected via usb-cable.

That's it. This application will allow you to solve your task. And may become an additional product for your company, if you add some settings to setup convenience key(s) and path to save created screenshots on device memory/media card.

  • I already thought about using a device-based tool, but my problem is I cannot store files on the device when it's connected via the USB cable to my PC. I need to be able to show my debugger and images from the handset at the same time. When the handset is connected it "locks out" the SDCard .. something about the USB cable prevents the device from using the card when connected. This is why I need a tool that runs from the PC. – BonanzaDriver Sep 29 '11 at 16:00
  • There is a freeware utility [BBScreenStream](http://www.technospot.net/blogs/bbscreenstream-a-screen-casting-recording-software-for-blackberry-mobiles/). But it requires JavaLoader.exe. And if javaloader does not work, then this utility becomes unusable. In this case I would make a presentation with already prepared screenshots. –  Sep 29 '11 at 16:09
0

I'm not sure how to actually fix your problem but alternatively you could just run the application in the device simulator and get the screenshots from there. Run the simulator and go to "Edit" > "Save LCD Snapshot".

Jonathan
  • 1,735
  • 11
  • 17
  • 1
    Good point, if it is ok to show the application on simulator mode, this way is much more better. If you need to show the application on actual device, consider way I suggested. –  Sep 29 '11 at 15:58
  • The problem is the simulators don't support the basic functionality - Bluetooth. It has to be on real hardware unfortunately. – BonanzaDriver Sep 29 '11 at 16:08
  • You have control of the application. Couldn't you just simulate the activity that you want to show and take a screenshot of that? – Jonathan Sep 29 '11 at 17:26
  • I could, but the point of screen capture tools (at least in this context) is to minimize additional (and unnecessary) work. – BonanzaDriver Sep 29 '11 at 18:35