android - SQlite:数据库被锁定错误

标签 android database sqlite locked

我正在为我的 Android 应用程序使用 SOA 架构。我在后台连续运行一个服务(每 1 分钟后),从我的 MYSQL 数据库中获取数据并将其与我的 SQLite 数据库同步(如果 2 个数据库有任何变化)。

现在,当服务在后台运行时,它会打开 SQLite。同时,如果我正在处理(使用)应用程序,它还会尝试打开 Sqlite 来获取数据。在那种情况下,我收到一个错误,称为:数据库被锁定在 android.database.SQLiteOpenHelper.getReadableDatabase。

有人可以建议我在这种情况下可以做什么吗?

最佳答案

我更喜欢你使用 ContentProvider这里。

尽管它的主要目的是在应用程序之间共享,但它可以在我们的单个应用程序中使用。

如果我们使用content provider,就不用担心数据库的关闭和锁定。

引用Simple Content Provider for db operations

关于android - SQlite:数据库被锁定错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8503260/

相关文章:

android - 如何解决 Xamarin Forms 中的部署错误?

java - 如何等待 TextView 中的特定字符串继续执行下一个方法

python - 将字典作为用户输入,然后保存到json文件中

php - mysql如何获取表的外键

java - 回收器 View 仅在再次启动 Activity 后才显示更新的列表

SQLite - 在 SELECT INTO 语句上生成 GUID/UUID

android inapp-billing - 找出 API 版本

php - 使用 MySQL 查询作为 PHP 脚本的标识,将 FCM 推送通知发送到 Android 应用程序中的特定设备

php - 从外键表中检索字段

c - 由于 'long long int'(64 位)数据类型,Sqlite 数据库在目标上失败