From 07fd97ef2575c5a9576d01c62c78010c089ca2ac Mon Sep 17 00:00:00 2001 From: lizhiyuan Date: Sun, 26 Jun 2022 18:17:04 +0800 Subject: [PATCH 1/3] =?UTF-8?q?download:=20=E6=A3=80=E6=9F=A5=E8=BD=AF?= =?UTF-8?q?=E4=BB=B6=E6=BA=90=E7=9A=84=E6=9C=89=E6=95=88=E6=80=A7?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/downloadworker.cpp | 10 ++++++++-- 1 file changed, 8 insertions(+), 2 deletions(-) diff --git a/src/downloadworker.cpp b/src/downloadworker.cpp index 22ca16f..08a2541 100644 --- a/src/downloadworker.cpp +++ b/src/downloadworker.cpp @@ -106,13 +106,19 @@ DownloadController::DownloadController(QObject *parent) for (int i = 0; i < list.size(); i++) { if (list.at(i).contains("镜像源 Download only") && i + 1 < list.size()) { for (int j = i + 1; j < list.size(); j++) { - domains.append(list.at(j)); + system("curl -I -s --connect-timeout 5 " + list.at(j).toUtf8() + + "/dcs-repo.gpg-key.asc -w %{http_code} |tail -n1 > /tmp/spark-store/cdnStatus.txt"); + QFile cdnStatus("/tmp/spark-store/cdnStatus.txt"); + if(cdnStatus.open(QFile::ReadOnly) && QString(cdnStatus.readAll()).toUtf8()=="200"){ + qDebug() << list.at(j); + domains.append(list.at(j)); + } } break; } } } - qDebug() << domains.size(); + qDebug() << domains << domains.size(); /* domains = { -- Gitee From 2951654100ef7cc84d231c0c19fc6a724bb5b39b Mon Sep 17 00:00:00 2001 From: lizhiyuan Date: Sun, 26 Jun 2022 19:08:11 +0800 Subject: [PATCH 2/3] =?UTF-8?q?readme:=20=E4=BF=AE=E6=AD=A3=20ubuntu=20?= =?UTF-8?q?=E7=9A=84=E7=BC=96=E8=AF=91=E8=AF=B4=E6=98=8E?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- README.zh.md | 9 ++++++++- 1 file changed, 8 insertions(+), 1 deletion(-) diff --git a/README.zh.md b/README.zh.md index 173399b..1be7343 100644 --- a/README.zh.md +++ b/README.zh.md @@ -23,12 +23,19 @@ #### 编译安装 -Deepin V20/UOS 21/ Ubuntu 22.04 系统下, 安装依赖 +Deepin V20/UOS 21 系统下, 安装依赖 ```shell sudo apt install git qt5-default debhelper pkg-config qtchooser libqt5core5a libqt5gui5 libqt5widgets5 libqt5network5 libqt5concurrent5 libdtkcore-dev libdtkgui-dev libdtkwidget-dev qttools5-private-dev libnotify-dev qtwebengine5-dev ``` + +Ubuntu 22.04 系统下, 安装依赖 +```shell +sudo apt install git qtbase5-dev debhelper pkg-config qtchooser libqt5core5a libqt5gui5 libqt5widgets5 libqt5network5 libqt5concurrent5 libdtkcore-dev libdtkgui-dev libdtkwidget-dev qttools5-private-dev libnotify-dev qtwebengine5-dev + +``` + 然后 ```shell git clone https://gitee.com/deepin-community-store/spark-store.git -- Gitee From 1150ed645f2032c62f63fb3daba8944a7fd397ff Mon Sep 17 00:00:00 2001 From: lizhiyuan Date: Mon, 27 Jun 2022 23:46:53 +0800 Subject: [PATCH 3/3] =?UTF-8?q?widget:=20=E6=A3=80=E6=9F=A5cdn=E7=8A=B6?= =?UTF-8?q?=E5=86=B5=E5=9C=A8=E4=B8=8B=E8=BD=BD=E5=BC=80=E5=A7=8B=E5=89=8D?= =?UTF-8?q?=E6=A3=80=E6=B5=8B,=E4=B8=8D=E5=A0=B5=E5=A1=9Eui=E7=BA=BF?= =?UTF-8?q?=E7=A8=8B?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- src/widget.cpp | 6 +----- 1 file changed, 1 insertion(+), 5 deletions(-) diff --git a/src/widget.cpp b/src/widget.cpp index f3d1d3d..b9a703f 100644 --- a/src/widget.cpp +++ b/src/widget.cpp @@ -47,11 +47,6 @@ Widget::Widget(DBlurEffectWidget *parent) : httpClient = new AeaQt::HttpClient; - QtConcurrent::run([=]() - { - downloadController = new DownloadController(this); // 并发下载 - }); - connect(ui->menu_main, &QPushButton::clicked, this, [=](){Widget::chooseLeftMenu(0);}); connect(ui->menu_network, &QPushButton::clicked, this, [=](){Widget::chooseLeftMenu(1);}); @@ -672,6 +667,7 @@ void Widget::startRequest(QUrl url, QString fileName) isdownload = true; download_list[allDownload - 1].free = false; + downloadController = new DownloadController(this); // 并发下载,在点击下载按钮的时候才会初始化 connect(downloadController, &DownloadController::downloadProcess, this, &Widget::updateDataReadProgress); connect(downloadController, &DownloadController::downloadFinished, this, &Widget::httpFinished); connect(downloadController, &DownloadController::errorOccur, this, [=](QString msg){this->sendNotification(msg);}); -- Gitee