微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

在模拟器上运行程序时,在Android中复制数据库时出错

我编写了一个简单的Android应用程序,它使用sqlite数据库,该数据库位于“assets”文件夹中.我使用了DataHelper类,它的DB_PATH初始化如下:

 private static String DB_PATH = "/data/data/program.proverb/databases/";

当我尝试在我的galaxy S上运行它时,它工作正常,但是当我尝试在模拟器上运行它时,它显示以下错误

11-13 19:20:31.302: ERROR/AndroidRuntime(289): FATAL EXCEPTION: main
11-13 19:20:31.302: ERROR/AndroidRuntime(289): java.lang.Error: Error copying database

你能帮我解决一下这个问题,以便它也适用于模拟器吗?

解决方法:

try
{
   copyDataBase();
} 
catch (IOException e)
{
      throw new Error("Error copying database");
}

你的答案在IOException内.你需要记录堆栈跟踪,或者抛出“Error”而不是抛出这个:

throw new RuntimeException(e);

Android将获取异常并为您记录.这应该告诉你至少从哪里开始.

有两个可能的候选人.

1)资源文件夹中不存在数据库(或名称略有错误).
2)您的程序文件夹路径错误.

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐