0

目前正在使用Eclipse Blackberry插件进行开发,并且我已经从RIM获得了我的代码签名密钥,并且可以在设备上成功调试。

我遇到问题的地方是在设备上生成一个 SQLite 数据库(没有 SD 卡)。每次尝试使用该行时都会引发 ControlledAccessException if(DatabaseFactory.exists(dbURI))

我使用 RIM 提供的文件签名工具来创建我自己的 .KEY 文件。我已将 .KEY 文件设置为公共和非公共类以及我的应用程序中的其他包的默认值。我的手机 (Torch 9810) 上的安全设置为应用程序权限下的所有内容提供了应用程序允许状态。我也试过辞职申请无济于事。

我知道我的应用程序正在获取 .KEY 文件,因为key = CodeSigningKey.get(moduleHandle,"Key_Name");它返回了一个值。那么有人知道发生了什么吗?

更新:所以我的签名工具告诉我,我生成的密钥在状态下是“未注册”,在详细信息下:“请联系签名者并在签名机构注册。” 但既然我是签名者,我该怎么办?

4

1 回答 1

0

ControlledAccessException的文档说:

当线程试图在没有适当权限的情况下访问 ControlledAccess 对象时,将引发此异常。

您需要检查用户是否已授予访问文件系统的适当权限才能使用数据库 API。 ApplicationPermissions.PERMISSION_FILE_API是可能需要的,但可能还有更多。

于 2012-04-13T23:16:24.447 回答