diff --git a/app/src/main/java/com/github/catvod/utils/DownloadMT.kt b/app/src/main/java/com/github/catvod/utils/DownloadMT.kt index 0c7d0add..6d9be388 100644 --- a/app/src/main/java/com/github/catvod/utils/DownloadMT.kt +++ b/app/src/main/java/com/github/catvod/utils/DownloadMT.kt @@ -29,7 +29,7 @@ object DownloadMT { /* val service = Executors.newFixedThreadPool(THREAD_NUM) SpiderDebug.log("--proxyMultiThread: THREAD_NUM " + THREAD_NUM)*/ - val `in`: SequenceInputStream? + val seqInputStream: SequenceInputStream? try { //缓存,避免每次都请求total等信息 @@ -108,17 +108,17 @@ object DownloadMT { jobs.joinAll() } - `in` = SequenceInputStream(Vector(inputStreams).elements()) + seqInputStream = SequenceInputStream(Vector(inputStreams).elements()) // SpiderDebug.log(" ++proxy res data:" + Json.toJson(response.body())); - var contentType: String? = if (StringUtils.isAllBlank( - resHeader["Content-Type"] - ) - ) resHeader["content-type"] else resHeader["Content-Type"] - val contentDisposition: String = resHeader["Content-Disposition"]!!.toString() - if (StringUtils.isAllBlank(contentType)&& StringUtils.isNoneBlank(contentDisposition)) { - contentType = getMimeType(contentDisposition) + var contentType: String? = resHeader["Content-Type"] + if (StringUtils.isAllBlank(contentType)) { + contentType = resHeader["content-type"] + } + + if (StringUtils.isAllBlank(contentType) && StringUtils.isNoneBlank(resHeader["Content-Disposition"])) { + contentType = getMimeType(resHeader["Content-Disposition"]) } @@ -131,10 +131,11 @@ object DownloadMT { "bytes %s-%s/%s", partList[0][0], partList[THREAD_NUM - 1][1], total ) // respHeaders.put("content-range", String.format("bytes %s-%s/%s", partList.get(0)[0], partList.get(THREAD_NUM - 1)[1], total)); - SpiderDebug.log("++proxy res contentType:$contentType") + SpiderDebug.log("----proxy res contentType:$contentType") // SpiderDebug.log("++proxy res body:" + response.body()); - SpiderDebug.log("++proxy res respHeaders:" + Json.toJson(resHeader)) - return arrayOf(206, contentType, `in`, resHeader) + SpiderDebug.log("----proxy res respHeaders:" + Json.toJson(resHeader)) + SpiderDebug.log("----proxy inputstream:$seqInputStream") + return arrayOf(206, contentType, seqInputStream, resHeader) } catch (e: Exception) { SpiderDebug.log("proxyMultiThread error:" + e.message) diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index cdca7251..193d2c37 100644 Binary files a/jar/custom_spider.jar and b/jar/custom_spider.jar differ diff --git a/jar/custom_spider.jar.md5 b/jar/custom_spider.jar.md5 index 64e60eca..f6c422e3 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -2d18b21a13a3e7b982f1d1642d975c9b +d7d6052ea18536e48b17bdfb64a06a39 diff --git a/json/test.json b/json/test.json index e9cccc2c..f8c4147a 100644 --- a/json/test.json +++ b/json/test.json @@ -1,5 +1,5 @@ { - "spider": "https://gh-proxy.com/https://raw.githubusercontent.com/lushunming/AndroidCatVodSpider/multiThreadkt/jar/custom_spider.jar;md5;2d18b21a13a3e7b982f1d1642d975c9b", + "spider": "https://gh-proxy.com/https://raw.githubusercontent.com/lushunming/AndroidCatVodSpider/multiThreadkt/jar/custom_spider.jar;md5;d7d6052ea18536e48b17bdfb64a06a39", "lives": [ { "name": "电视直播",