Qsettings适用于32位apk,但未在我的64位apk中创建文件

问题描述 投票:0回答:1

我正在使用QtCreator构建的IOS / android应用。对于Android,我需要32位和64位版本的APK才能将其上传到Playstore。我的32位版本工作正常,但我的64位版本不保存任何配置。我正在使用Qsettings创建一个.conf文件。当我使用32位应用程序执行此操作时,无论在何处创建我的.conf文件,但使用64位版本时,该文件夹始终为空。经过检查,我可以在用于.conf文件的同一文件夹中创建文件夹和文件,因此这似乎不是权限问题。有谁知道Qsettings是否需要特殊的功能才能为64位应用程序写入文件?我已经阅读了文档(https://doc.qt.io/qt-5/qsettings.html),但找不到任何信息。

QSettings::setPath(QSettings::NativeFormat,QSettings::UserScope,QStandardPaths::writableLocation(QStandardPaths::StandardLocation::GenericDataLocation) + "/private");
    QSettings settings("Settings", "test");
    settings.setValue("test", "text");
    settings.sync();
android qt 32bit-64bit qsettings
1个回答
0
投票

我终于找到了答案。我使用的是较旧版本的Qt(5.10),并且存在一个会影响QSettings的错误(https://bugreports.qt.io/browse/QTBUG-68344)。如果您处于这种情况,一个简单的解决方法是使用configure命令的该参数重建Qt:

-no-feature-linkat
© www.soinside.com 2019 - 2024. All rights reserved.