mirror of
https://gitee.com/spark-store-project/spark-store
synced 2025-12-16 05:42:04 +08:00
feat: 支持 DTK 5.6.4 关于对话框“版本特性”显示功能
将版本特性信息写入 json,运行时解析文件信息并初始化版本特性对话框 Log: 添加版本特性 json 文件以及解析文件相关函数,用于构造版本特性对话框;版本号维护放入 src/assets/json/features.json 中统一管理,不再修改 main 函数,运行时从 json 文件读取并显示 * 该提交需要在低版本 DTK 验证能否正常编译运行
This commit is contained in:
@@ -8,6 +8,7 @@
|
||||
#include <QSettings>
|
||||
#include <QStandardPaths>
|
||||
#include <QFile>
|
||||
#include <QJsonDocument>
|
||||
|
||||
#define UOSDeveloperModeFile "/var/lib/deepin/developer-mode/enabled"
|
||||
|
||||
@@ -182,3 +183,33 @@ void Utils::checkUOSDeveloperMode()
|
||||
file.close();
|
||||
config.sync(); // 写入更改至 config.ini,并同步最新内容
|
||||
}
|
||||
|
||||
/**
|
||||
* @brief Utils::parseFeatureJsonFile 解析版本特性 json 文件
|
||||
* @return 返回 QJsonObject
|
||||
*/
|
||||
QJsonObject Utils::parseFeatureJsonFile()
|
||||
{
|
||||
QFile file(":/json/features.json");
|
||||
if (!file.open(QFile::ReadOnly))
|
||||
{
|
||||
qWarning() << Q_FUNC_INFO << "features.json open failed";
|
||||
return QJsonObject();
|
||||
}
|
||||
|
||||
QJsonParseError error;
|
||||
QJsonDocument jsonDoc = QJsonDocument::fromJson(file.readAll(), &error);
|
||||
if (error.error != QJsonParseError::NoError || jsonDoc.isNull())
|
||||
{
|
||||
qWarning() << Q_FUNC_INFO << "features.json validate failed:" << error.errorString();
|
||||
return QJsonObject();
|
||||
}
|
||||
|
||||
if (jsonDoc.isEmpty() || !jsonDoc.isObject())
|
||||
{
|
||||
qWarning() << Q_FUNC_INFO << "features jsonDoc parse failed:" << jsonDoc;
|
||||
return QJsonObject();
|
||||
}
|
||||
|
||||
return jsonDoc.object();
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user