It’s been a while since I’ve spent a significant time programming on the Blackberry, so it’s taken me a little while to get back into the swing of things. But I in doing so, I came across quite a few challenges that I thought I might share solutions to in hopes of helping other developers out there.
First problem:
Trying to sign the code from my project and getting Status=”Not Registered” and SignerID=3 and Signer Name=RIMAPPSA2
Apparently this problem can be caused by a number of different things, including using third party libraries that need to be signed. My problem, though, seems to be related some sort of bug in Eclipse when you are changing the properties of the Blackberry project. To recreate, include a third party .jar file in your Build path and save it. Then go into the properties for the project and change anything in the “Blackberry Project Properties” and “Apply”. You will note that the .jar file appears again in the root directory as well as the Referenced Libraries. This apparently is the cause of the signer problem. To correct, open the project properties, then go to Java Build Path. Remove the .jar file. Then click on “Add JARs” and select it again. Click on OK and rebuild your Active Blackberry Configuration, and when you Request Signatures, the offending entry should be gone.
Second Problem:
Could not load images as a part of the project.
I was able to include an icon image in the project without any problem by adding the icon in the properties for the Blackberry project. However, I was really struggling with getting images loaded using the Bitmap.getBitmapResource(“imagename.png”) method. After a great deal of debugging and frustration, I discovered that the .jar file for the project was being built without my img directory (which I had put at the root of my project). Instead, the img directory must be in the build path of the project. For me, the easiest thing was to just move the img directory below the src directory.
Hopefully these solutions will help someone avoid similar headaches in the future.