2012-04-13 38 views
0

我目前使用Eclipse黑莓插上了我的发展,我已经从RIM得到我的代码签名密钥,并能在设备上调试成功。ControlledAccessException抛出,甚至.KEY文件生成后

我在哪里遇到问题正在生成设备上的SQLite数据库(没有SD卡)。每次尝试使用行if(DatabaseFactory.exists(dbURI))时,都会收到ControlledAccessException异常。

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

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

UPDATE:我的签名工具告诉我,我产生下状态为“未注册”的关键,并在详细信息:“请签名并与签署授权注册。”但既然我是签名者,我该怎么办?

+0

有时候如果你在模拟器上运行,你会得到这种类型的异常;所以只要你遇到这种类型的异常(在模拟器中),只需关闭模拟器并再次打开它; – alishaik786 2012-04-16 15:09:02

+0

程序在模拟器上正常工作,只有当我部署到设备 – user486713 2012-04-16 16:09:07

回答

0

ControlledAccessException的文档说:当一个线程试图访问一个ControlledAccess对象没有相应的权限

,抛出此异常。

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

+0

根据应用程序权限检查时,所有内容都设置为允许。 – user486713 2012-04-16 14:35:45

相关问题