【问题标题】:SQLiteAssetHelper generates errorSQLiteAssetHelper 生成错误
【发布时间】:2025-12-31 02:55:06
【问题描述】:

我正在使用 SqliteAssetHelper 从资产文件夹中导入数据库并将其复制到标准数据库应用程序文件夹中。

虽然它的工作方式非常随机...当我将资产文件夹中的 .zip 文件替换为新文件并运行应用程序时,我收到此错误

E/AndroidRuntime(20036): Caused by: com.readystatesoftware.sqliteasset.SQLiteAssetException: Missing databases/adinspect.zip file in assets or target folder not writable

但我确定文件“adinpect.zip”在那里。我刚刚更新了我的数据库架构,重新压缩并替换了资产文件夹中的文件。

我错过了什么?

【问题讨论】:

  • 是我的数据库中的表“android_metadata”导致了这个错误吗?
  • 您确定其中有数据库文件吗?而不是sql什么的。也许在替换后尝试刷新您的资产文件夹。此外,zip 名称将用作数据库名称,而不是其中的名称。 android_metadata 可能是个问题。不是因为它在那里,而是如果里面的陈述是错误的。我只是想把所有的可能性都放在那里。我一直在使用它,没有问题
  • 刷新是关键。 @mango,如果您将其添加为答案,我将接受。干杯!!

标签: android sqlite android-sqlite android-assets


【解决方案1】:

确保在替换文件后刷新资产文件夹。有时 eclipse 不会注册文件更改。

【讨论】:

    【解决方案2】:

    我遇到了类似的问题,但我也错过了命名 assets/databases 目录(我有 assets/database)。

    只是想我会添加这个以防其他人遇到问题。

    【讨论】: