【发布时间】:2012-10-06 21:28:57
【问题描述】:
我已经在我的应用程序中创建了数据库并将数据存储在该数据库中,当我在模拟器中运行我的应用程序时,它会显示所有数据,但是当我在我的 android 设备中运行相同的应用程序时,它会显示错误? 这是我的代码。
private static String DB_NAME = "pa1.db";
private static String DB_PATH = "/data/data/in.bitcode.sn/databases/";
private void copyDataBase() throws IOException {
InputStream myInput = context.getAssets().open(DB_NAME);
String outFileName = DB_PATH + DB_NAME;
OutputStream myOutput = new FileOutputStream(outFileName);
byte[] buffer = new byte[1024];
int length;
while ((length = myInput.read(buffer)) > 0) {
myOutput.write(buffer, 0, length);
}
myOutput.flush();
myOutput.close();
myInput.close();
【问题讨论】:
-
错误是什么?另外,数据库是否大于 1MB?另外,不要对路径进行硬编码。
-
另外,你到底想做什么?
-
@Geobits DB 大于 1 MB 将无效。
-
@MMohsinNaeem 告诉我的 2.2 用户,几周前他们的应用程序在我实施拆分/复制之前崩溃了。我知道它是固定的现在,实际上是从 2.3 开始。不过,它仍然在旧设备上崩溃,这让人怀疑,因为他说它在模拟器上工作,而不是在设备上工作。无论哪种方式,他都说它只有 28kb,所以现在几乎不重要了。此时只需等待 logcat。
-
我们想要 logcat,我们想要 logcat ;-D
标签: android sqlite android-emulator