26 QNetworkRequest request;
38 const QVariant &data = json.
parse(bytes, &ok);
41 QVariantMap value = data.toMap();
42 if(value.contains(
"mvdata"))
44 value = value[
"mvdata"].toMap();
46 QVariantMap mv = value[
"sd"].toMap();
52 mv = value[
"hd"].toMap();
58 mv = value[
"sq"].toMap();
64 mv = value[
"rq"].toMap();
76 prop.
m_url = key[
"downurl"].toString();
80 const int bitrate = key[
"bitrate"].toInt() / 1000;
85 else if(bitrate > 1000 && bitrate <= 2000)
89 else if(bitrate > 2000 && bitrate <= 3000)
93 else if(bitrate > 3000)
117 const QVariant &data = json.
parse(
m_reply->readAll(), &ok);
120 QVariantMap value = data.toMap();
121 if(value.contains(
"data"))
123 bool contains =
false;
124 for(
const QVariant &var : value[
"data"].toList())
131 QVariantMap value = var.toMap();
135 item.
m_nickName = value[
"className"].toString();
137 for(
const QVariant &var : value[
"fm_list"].toList())
150 item.
m_name = value[
"fmName"].toString();
151 item.
m_id = value[
"fmId"].toString();
152 item.
m_coverUrl = value[
"imgUrlMv"].toString();
155 for(
const QVariant &var : value[
"mvs"].toList())
166 info.
m_songId = value[
"mvhash"].toString();
TTK_MODULE_EXPORT QString charactersReplace(const QString &value)
#define TTK_NETWORK_QUERY_CHECK(VALUE)
TTK_MODULE_EXPORT QByteArray md5(const QByteArray &data)
The class of the search result data item.
static void parseFromMovieProperty(TTK::MusicSongInformation *info, bool more)
void downLoadDataChanged(const QString &bytes)
The class of the music mv radio request abstract.
The class of the music song property.
static constexpr wchar_t key[]
virtual void downLoadFinished() overridefinal
TTK_MODULE_EXPORT QString sizeByteToLabel(qint64 size)
TTK_MODULE_EXPORT QByteArray syncNetworkQueryForGet(QNetworkRequest *request)
The namespace of the kugou request interface.
void makeRequestRawHeader(QNetworkRequest *request)
TTK::MusicSongInformationList m_items
#define TTK_INFO_STREAM(msg)
void createResultItem(const MusicResultInfoItem &songItem)
QVariant parse(QIODevice *io, bool *ok=0)
Read JSON string from the I/O Device and converts it to a QVariant object.
virtual void downLoadFinished() override
TTK_MODULE_EXPORT QString splitToken(const QString &name)
MusicMVRadioProgramRequest(QObject *parent=nullptr)
static void parseFromMovieProperty(TTK::MusicSongInformation *info, const QVariantMap &key)
void createMVRadioItem(const MusicResultDataItem &item)
TTK_MODULE_EXPORT QString toString(Record type)
static constexpr const char * KG_MOVIE_INFO_URL
Main class used to convert JSON data to QVariant objects.
TTK_MODULE_EXPORT QString mdII(const QString &data, bool encode)
static qint64 formatDuration(const QString &time) noexcept