【问题标题】:why is sqlite plugin not working with cordova app on ios为什么sqlite插件不能与ios上的cordova应用程序一起使用
【发布时间】:2020-02-10 01:36:42
【问题描述】:

我正在为 android 和 iOS 构建一个 Cordova 应用程序,它将用户信息存储在本地数据库中。但是,我无法在 iOS 上打开数据库连接。

该应用程序在 android 上运行良好,但是当我在 iOS 上运行它时,我收到一条错误消息,提示 window.sqlite 未定义。我一直在搜索互联网,但我找不到相关的问题。我不确定我的代码是否设置不正确,或者我是否缺少一些 iOS 配置。我使用的 SQLite 插件“cordova-sqlite-evplus-legacy-free 0.9.1”,cordova iOS 版本是“5.0.1”。

db = window.sqlitePlugin.openDatabase({
            name: 'test.db',
            location: 'default',
            //iosDatabaseLocation: 'Library'
        },
        function(db) {
            if (clean_database) dumpDatabase();
            else buildSchemaVersions();
        },
        function(error) {
            db_error = error;
            alert('Open database ERROR: ' + error.message);
        })

【问题讨论】:

    标签: ios sqlite cordova


    【解决方案1】:

    首先:我强烈建议不要使用最近一次更新已在 2 年多前的插件,特别是如果它用于与您的应用程序的数据库一样重要的东西。它很可能没有在当前版本的 iOS 上经过适当的测试。为什么不使用更活跃的插件cordova-sqlite-storage?我已经使用这个插件多年了,没有任何问题(iOS 和 Android)。

    对于问题本身:

    1. 您确定在deviceready 事件之后调用openDatabase 吗?
    2. 插件是否正确添加到 iOS 平台?请尝试将其删除并重新添加,并在将其添加到 iOS 平台时注意是否有任何错误。

    【讨论】:

      猜你喜欢
      • 2021-06-14
      • 1970-01-01
      • 1970-01-01
      • 2022-08-06
      • 2020-08-17
      • 1970-01-01
      • 2015-07-16
      • 2010-10-02
      • 1970-01-01
      相关资源
      最近更新 更多