0
votes

Device: Curve 8520
OS: 4.6.1
JDE: 4.6.1
JDK: 1.6
Signed app? Yes.

Hello,
I'm trying to deploy a blackberry app (called 'ConstituenC') that works fine in the simulator. It uses restricted APIs, so I obtained a key from RIM and applied it via the Java Development Environment.

When I attempt to run on my phone (BB Curve, 8520. OS: 4.6.1), it shows an error saying "'ConstituentC' attempts to access a secure API."

The following is shown in the BB Event Log:

Java Exception: Error starting ConstituentC: Module 'ConstituentC' attempts to access a secure API. Error starting ConstituentC: Module 'ConstituentC' attempts to access a secure API. Linker error:
'VerifyError' for ConstituentC Module 'ConstituentC' attempts to access a secure API module 9621 cannot reference net.rim.blackberry.api.mail.Store
CMM: ConstituentC (9621) invalid sig for 0x424252 VM:LINK ConstituentC

Any ideas on how this could be resolved?

3

3 Answers

0
votes

In order to deploy to a device running 4.6 you need to compile your app with a JDE 4.6 or lower. The newer JDE such as JDE 5.0 cannot "down compile" to lower OS versions.

This means that if you're like most developers and need to support multiple OS versions (4.3, 4.5, 4.6, 4.7, 5.0) then you'll need to make multiple builds, assuming you need to use newer APIs (such as the touch APIs in 4.7).

0
votes

The COD should be signed using the RIM Code Signing. http://docs.blackberry.com/en/developers/deliverables/11938/Request_code_signatures_511409_11.jsp

Without signing, we cant install the blackberry application in Blackberry mobiles.

0
votes

OK, the problem was with my keys, I had to get a new set. Once that was done, the application loaded.