我使用qt开发了一个c++库。在本教程中,我使用 QSqlDatabase 从 SQLite 数据库查询信息。注意:我的库在 qt 桌面应用程序中运行良好(我正在 Linux 上开发)。
现在我的下一步是在 android studio 项目中使用我的库。为此,我使用 android ndk 编译了我的库(此步骤工作正常),但得到了 QSqlDatabase : 驱动程序未加载 驱动程序未加载。
当我调用 m_database.setDatabaseName(/Database.db); 时出现此错误
感谢您的反馈
错误消息说明了一切:驱动程序未加载。
在您的情况下,未加载 SQLite 数据库驱动程序。
这可能是因为:
看看这里的“故障排除”部分:http://doc.qt.io/qt-5/sql-driver.html
我不是 Android 专业人士,但可以轻松找到文档 :
在这些页面中搜索“sql”和“deploy”
我终于解决了我的问题。 Qt 在 apk 的树文件夹中找不到驱动程序(一旦部署在设备上)
对于我的情况,Qt 的构建有效,但 exe 没有。我必须将“sqldrivers”文件夹及其所有 DLL 从 Qt 文件夹复制到 exe 文件旁边的部署文件夹。请记住将文件夹及其内容转储到那里,而不仅仅是内容,它正在寻找该文件夹中的路径。