抛出ControlledAccessException,即使在.KEY文件生成之后

时间:2012-04-13 19:33:41

标签: blackberry blackberry-eclipse-plugin

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

我遇到的问题是在设备上生成SQLite数据库(没有SD卡)。每当我尝试使用行if(DatabaseFactory.exists(dbURI))时,我都会抛出ControlledAccessException。

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

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

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

1 个答案:

答案 0 :(得分:0)

ControlledAccessException的文档说:

  

当线程尝试在没有适当权限的情况下访问ControlledAccess对象时抛出此异常。

您需要检查用户是否已授予访问文件系统的相应权限才能使用Database api。可能需要ApplicationPermissions.PERMISSION_FILE_API,但可能还有更多。