将文件从资产复制到永久位置 Qt + Android

Copy file from assets to permanent location Qt + Android

我正在尝试将打包在资产文件夹中的默认初始化数据库复制到 android 设备中的永久位置。为此,我有以下代码:

QString db_file = "/my_db";
QString path = QStandardPaths::writableLocation(QStandardPaths::AppDataLocation);
QFile assets_path("assets:" + db_file);
assets_path.copy(path + db_file);
QFile::setPermissions(path + db_file, QFileDevice::ReadUser | 
                                      QFileDevice::WriteUser);

然后我会继续在这个新路径中打开数据库,问题是我在复制后收到以下错误。

Copy error "Cannot create /data/user/0/org.qtproject.Demo/files/my_db for output"

我做错了什么?这也是 correct/proper 的方法吗?

谢谢。

显然是 Qt 5.10 预构建版本中的一个错误,回滚到 Qt 5.9 并且可以正常工作。很遗憾,因为我需要 QML 翻译功能。

https://bugreports.qt.io/browse/QTBUG-64103