TTKMusicPlayer  4.2.0.0
TTKMusicPlayer imitates Kugou UI, the music player uses of qmmp core library based on Qt for windows and linux
musicdownloadbingskinrequest.cpp
Go to the documentation of this file.
3 
4 static constexpr const char *PREFIX_URL = "UEQvb1lxVXFnV0dqRmxzNkY0alFJUHZUSUhyZUVNY0Y2OGZ1L255cS9CMklCakk4Q1dNQkF3PT0=";
5 static constexpr const char *QUERY_URL = "bkRaMGo0WEhveVlwbEV6a0FDbEsrNmNGVHVrZTh1VmFDZTBmdElkZ0ZCYXk2dDJMaXF3MUlrV2JndmlpUWVudkF5UVVaMklvSXQydGI3cFhaTFRtaUV2VUZBcz0=";
6 
9 {
10 
11 }
12 
14 {
16  connect(d, SIGNAL(downLoadRawDataChanged(QByteArray)), SLOT(downLoadFinished(QByteArray)));
18 }
19 
21 {
22  MusicSkinRemoteGroupList groups;
23 
24  QJsonParseError ok;
25  const QJsonDocument &json = QJsonDocument::fromJson(bytes, &ok);
27  {
28  QVariantMap value = json.toVariant().toMap();
29  if(value.contains("images"))
30  {
32  group.m_group = SKIN_BING_DIR;
33  group.m_id = TTK_DEFAULT_STR;
34 
35  const QVariantList &datas = value["images"].toList();
36  for(const QVariant &var : qAsConst(datas))
37  {
38  if(var.isNull())
39  {
40  continue;
41  }
42 
43  value = var.toMap();
44 
46  item.m_name = value["copyright"].toString();
47  item.m_index = value["startdate"].toInt();
48  item.m_useCount = item.m_index;
49  item.m_url = TTK::Algorithm::mdII(PREFIX_URL, false).arg(value["urlbase"].toString());
50 
51  if(item.isValid())
52  {
53  group.m_items << item;
54  }
55  }
56 
57  if(group.isValid())
58  {
59  groups << group;
60  }
61  }
62  }
63 
64  Q_EMIT downLoadDataChanged(groups);
65 }
The class of the remote skin item.
virtual void startToRequest() overridefinal
#define TTK_DEFAULT_STR
Definition: ttkglobal.h:276
void downLoadDataChanged(const MusicSkinRemoteGroupList &bytes)
static constexpr const char * PREFIX_URL
QVariant toVariant() const
static QJsonDocument fromJson(const QByteArray &json, QJsonParseError *error=0)
The class of the download skin remote background.
ParseError error
#define qAsConst
Definition: ttkqtglobal.h:57
static constexpr const char * SKIN_BING_DIR
The class of the data source download request.
void startToRequest(const QString &url)
TTK_MODULE_EXPORT QString toString(Record type) noexcept
virtual void downLoadFinished(const QByteArray &bytes) overridefinal
The class of the remote skin item group.
MusicDownloadBingSkinRequest(QObject *parent=nullptr)
static constexpr const char * QUERY_URL
TTK_MODULE_EXPORT QString mdII(const QString &data, bool encode)