blackberry真机调试app程序时,读取sdcard或者store闪存卡出错,为什么?

zhangbenqiang 2012-03-08 03:28:48
在eclispe_plung_in_blackberry 开发环境下。创建了一个midlet程序,然后选择 debug as ---> blackberry device 手机通过数据线直接连接到pc上debug调试此应用程序。

但是测试过程中,对sd卡或者自带的闪存store进行文件读写操作时,报异常:文件系统出错(1003)

代码如下:



public byte[] ReadCert( int usage )
{
byte[] b;
try {
if(usage == 1)
{
localFileConnection = (FileConnection)Connector.open(/*"file:///SDCard/sym/EncCert.cer"*/"file:///store/EncCert.cer",Connector.READ_WRITE);
}
else
localFileConnection = (FileConnection)Connector.open(/*"file:///SDCard/sym/SigCert.cer"*/"file:///store/SigCert.cer",Connector.READ_WRITE);

if(!localFileConnection.exists())
return null;

is= localFileConnection.openInputStream();
b= new byte[(int)localFileConnection.fileSize()];
is.read(b);
is.close();
is = null;
localFileConnection.close();
localFileConnection = null;

} catch (IOException e) {

System.out.println("ReadCert error!"+e.toString());
}
return b;
}





上面这个方法中不管是对sdcard 进行读写还是 store 读写,都报异常:ReadCert error!net.rim.device.api.io.file.FileIOException: file system error (1003)

但是如果单独把此应用程序安装到手机上测试,则不会出现上面这个错误!

我觉得是不是在真机debug调测的过程中,不允许访问sd卡或者是本身的闪存啊?因为此时是通过数据线连接到pc上的。

如果不是,那么是哪里出错了?具体的解决办法是什么?

我采取这种测试而不是在模拟器中测试的目的就是为了真机测试,在真机上运行程序,更容易发现和解决问题。

...全文
251 2 打赏 收藏 转发到动态 举报
写回复
用AI写文章
2 条回复
切换为时间正序
请发表友善的回复…
发表回复
杨江 2012-03-10
  • 打赏
  • 举报
回复
一种情况:
黑莓手机USB连接到PC机上,手机SD卡映射为PC机的硬盘了,这个时候手机上面任何程序都访问不到SD卡了。
检验办法:
PC机上有没有多一个SD卡硬盘?手机上面 应用->"文件管理器" 或者 多媒体 -> "照片" 是不是访问不到SD卡?
解决办法:
手机上面,选项 -> 内存 -> 连接时自动启用“大容量模式”修改为 提示,或者 否。
zhangbenqiang 2012-03-09
  • 打赏
  • 举报
回复
自己顶一下,没人回复啊?

大家都没碰到过类似的问题 难道?还是论坛访客少,不景气?

1,146

社区成员

发帖
与我相关
我的任务
社区描述
探讨BlackBerry智能手机开发相关的技术、软件、产品等话题。
社区管理员
  • BlackBerry
加入社区
  • 近7日
  • 近30日
  • 至今
社区公告
暂无公告

试试用AI创作助手写篇文章吧