From b4a6be8470e764133f1ac789ad986010ecb45480 Mon Sep 17 00:00:00 2001 From: =?UTF-8?q?=E6=BA=90=E6=96=87=E9=9B=A8?= <41315874+fumiama@users.noreply.github.com> Date: Tue, 27 May 2025 22:41:15 +0900 Subject: [PATCH] =?UTF-8?q?v2.5.1=20=E4=BF=AE=E5=A4=8D=201.=20=E8=BF=91?= =?UTF-8?q?=E6=9C=9F=E6=97=A0=E6=B3=95=E5=8A=A0=E8=BD=BD=E7=9A=84=E9=97=AE?= =?UTF-8?q?=E9=A2=98=20(fix=20#139)?= MIME-Version: 1.0 Content-Type: text/plain; charset=UTF-8 Content-Transfer-Encoding: 8bit --- app/build.gradle | 4 +- .../java/top/fumiama/copymanga/api/Config.kt | 7 +-- .../top/fumiama/copymanga/api/manga/Book.kt | 2 +- .../top/fumiama/copymanga/api/manga/Shelf.kt | 6 +-- .../top/fumiama/copymanga/api/manga/Volume.kt | 2 +- .../top/fumiama/copymanga/api/user/Member.kt | 14 +++--- .../fumiama/copymanga/net/DownloadTools.kt | 4 +- .../ui/cardflow/history/HistoryFragment.kt | 2 +- .../ui/cardflow/newest/NewestFragment.kt | 2 +- .../ui/cardflow/rank/RankFragment.kt | 11 +++-- .../ui/cardflow/recommend/RecFragment.kt | 2 +- .../ui/cardflow/search/SearchFragment.kt | 2 +- .../ui/cardflow/shelf/ShelfFragment.kt | 3 +- .../ui/cardflow/sort/SortFragment.kt | 15 +++--- .../ui/cardflow/topic/TopicFragment.kt | 4 +- .../fumiama/copymanga/ui/home/HomeFragment.kt | 2 +- .../fumiama/copymanga/ui/home/HomeHandler.kt | 2 +- .../copymanga/view/template/StatusCardFlow.kt | 3 +- .../copymanga/view/template/ThemeCardFlow.kt | 3 +- app/src/main/res/values/strings.xml | 46 ++++++++++--------- app/src/main/res/xml/pref_setting.xml | 11 +++++ 21 files changed, 84 insertions(+), 63 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index b6daf84..a8a0bd5 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -11,8 +11,8 @@ android { applicationId 'top.fumiama.copymanga' minSdkVersion 23 targetSdkVersion 34 - versionCode 71 - versionName '2.5.0' + versionCode 72 + versionName '2.5.1' resourceConfigurations += ['zh', 'zh-rCN'] testInstrumentationRunner "androidx.test.runner.AndroidJUnitRunner" diff --git a/app/src/main/java/top/fumiama/copymanga/api/Config.kt b/app/src/main/java/top/fumiama/copymanga/api/Config.kt index 9ddb20c..0e8a9b8 100644 --- a/app/src/main/java/top/fumiama/copymanga/api/Config.kt +++ b/app/src/main/java/top/fumiama/copymanga/api/Config.kt @@ -55,7 +55,7 @@ object Config { "region", if (net_use_foreign.value) "1" else "0" ) - .addHeader("platform", "3") + .addHeader("platform", platform.value) .build() return field } @@ -78,7 +78,7 @@ object Config { mHostApiUrlsMutex.withLock { if (mHostApiUrls.isNotEmpty()) return@runBlocking try { - val u = getString(R.string.networkApiUrl).format(networkApiUrl.value) + val u = getString(R.string.networkApiUrl).format(networkApiUrl.value, platform.value) val r = Gson().fromJson((apiProxy?.comancry(u) { DownloadTools.getHttpContent(it, referer, pc_ua) }?:DownloadTools.getHttpContent(u, referer, pc_ua)).decodeToString(), NetworkStructure::class.java) @@ -107,6 +107,7 @@ object Config { val navTextInfo = UserPreferenceString("navTextInfo", R.string.navTextInfo) val proxy_key = PreferenceString(R.string.imgProxyCodeKeyID) val app_ver = PreferenceString("settings_cat_general_et_app_version", R.string.app_ver) + val platform = PreferenceString("settings_cat_general_et_platform", R.string.platform) val token = UserPreferenceString("token", "", null) val pc_ua get() = MainActivity.mainWeakReference?.get()?.getString(R.string.pc_ua)?.format(app_ver.value)?:"" val referer get() = MainActivity.mainWeakReference?.get()?.getString(R.string.referer)?.format(app_ver.value)?:"" @@ -143,5 +144,5 @@ object Config { fun getChapterInfoApiUrl(path: String?, uuid: String?, version: Int) = MainActivity.mainWeakReference?.get()?.getString(R.string.chapterInfoApiUrl) - ?.format(myHostApiUrl.random(), path, if (version >= 2) "$version" else "" , uuid) + ?.format(myHostApiUrl.random(), path, if (version >= 2) "$version" else "" , uuid, platform.value) } diff --git a/app/src/main/java/top/fumiama/copymanga/api/manga/Book.kt b/app/src/main/java/top/fumiama/copymanga/api/manga/Book.kt index 2a9865f..1eb276b 100644 --- a/app/src/main/java/top/fumiama/copymanga/api/manga/Book.kt +++ b/app/src/main/java/top/fumiama/copymanga/api/manga/Book.kt @@ -15,7 +15,7 @@ import top.fumiama.dmzj.copymanga.R import java.io.File class Book(val path: String, private val getString: (Int) -> String, private val exDir: File, private val loadCache: Boolean = false, private val mPassName: String? = null) { - private val mBookApiUrl = getString(R.string.bookInfoApiUrl).format(Config.myHostApiUrl.random(), path) + private val mBookApiUrl = getString(R.string.bookInfoApiUrl).format(Config.myHostApiUrl.random(), path, Config.platform.value) private val mUserAgent = getString(R.string.pc_ua).format(Config.app_ver.value) private var mBook: BookInfoStructure? = null private var mGroupPathWords = arrayOf() diff --git a/app/src/main/java/top/fumiama/copymanga/api/manga/Shelf.kt b/app/src/main/java/top/fumiama/copymanga/api/manga/Shelf.kt index 0fdf8e2..9ecb5a8 100644 --- a/app/src/main/java/top/fumiama/copymanga/api/manga/Shelf.kt +++ b/app/src/main/java/top/fumiama/copymanga/api/manga/Shelf.kt @@ -12,8 +12,8 @@ import top.fumiama.dmzj.copymanga.R class Shelf(private val getString: (Int) -> String) { private val apiUrl: String get() = getString(R.string.shelfOperateApiUrl).format(Config.myHostApiUrl.random()) private val queryApiUrlTemplate = getString(R.string.bookUserQueryApiUrl) - private val addApiUrl get() = "$apiUrl?platform=3" - private val delApiUrl get() = "${apiUrl}s?platform=3" + private val addApiUrl get() = "$apiUrl?platform=${Config.platform.value}" + private val delApiUrl get() = "${apiUrl}s?platform=${Config.platform.value}" suspend fun add(comicId: String): String = withContext(Dispatchers.IO) { if (comicId.isEmpty()) { return@withContext "空漫画ID" @@ -68,7 +68,7 @@ class Shelf(private val getString: (Int) -> String) { suspend fun query(pathWord: String): BookQueryStructure? = withContext(Dispatchers.IO) { try { - val queryUrl = queryApiUrlTemplate.format(Config.myHostApiUrl.random(), pathWord) + val queryUrl = queryApiUrlTemplate.format(Config.myHostApiUrl.random(), pathWord, Config.platform.value) (Config.apiProxy?.comancry(queryUrl) { url -> DownloadTools.getHttpContent(url, Config.referer) }?:DownloadTools.getHttpContent(queryUrl, Config.referer)).let { diff --git a/app/src/main/java/top/fumiama/copymanga/api/manga/Volume.kt b/app/src/main/java/top/fumiama/copymanga/api/manga/Volume.kt index ea1c397..5da20dc 100644 --- a/app/src/main/java/top/fumiama/copymanga/api/manga/Volume.kt +++ b/app/src/main/java/top/fumiama/copymanga/api/manga/Volume.kt @@ -39,7 +39,7 @@ class Volume(private val path: String, private val groupPathWord: String, getStr return@withContext mVolume } - private fun getApiUrl(offset: Int) = mGroupInfoApiUrlTemplate.format(Config.myHostApiUrl.random(), path, groupPathWord, offset) + private fun getApiUrl(offset: Int) = mGroupInfoApiUrlTemplate.format(Config.myHostApiUrl.random(), path, groupPathWord, offset, Config.platform.value) private suspend fun download(re: Array, offset: Int, c: Int) = withContext(Dispatchers.IO) { Log.d("MyV", "下载偏移: $offset") getApiUrl(offset).let { diff --git a/app/src/main/java/top/fumiama/copymanga/api/user/Member.kt b/app/src/main/java/top/fumiama/copymanga/api/user/Member.kt index d109c8a..3925574 100644 --- a/app/src/main/java/top/fumiama/copymanga/api/user/Member.kt +++ b/app/src/main/java/top/fumiama/copymanga/api/user/Member.kt @@ -49,7 +49,7 @@ class Member(private val getString: (Int) -> String) { } try { val u = getString(R.string.memberInfoApiUrl) - .format(Config.myHostApiUrl.random()) + .format(Config.myHostApiUrl.random(), Config.platform.value) val data = (Config.apiProxy?.comancry(u) { DownloadTools.getHttpContent(it) }?:DownloadTools.getHttpContent(u)).decodeToString() @@ -97,7 +97,7 @@ class Member(private val getString: (Int) -> String) { } private suspend fun postLogin(username: String, pwd: String, salt: Int): ByteArray? = - getString(R.string.loginApiUrl).format(Config.myHostApiUrl.random()).let { u -> + getString(R.string.loginApiUrl).format(Config.myHostApiUrl.random(), Config.platform.value).let { u -> val use: suspend (String) -> ByteArray? = { it: String -> DownloadTools.getApiConnection(it, "POST").let { c -> c.doOutput = true @@ -105,7 +105,7 @@ class Member(private val getString: (Int) -> String) { "content-type", "application/x-www-form-urlencoded;charset=utf-8" ) - c.setRequestProperty("platform", "3") + c.setRequestProperty("platform", Config.platform.value) c.setRequestProperty("accept", "application/json") val r = if (!Config.net_use_foreign.value) "1" else "0" val pwdEncoded = @@ -116,7 +116,7 @@ class Member(private val getString: (Int) -> String) { username, Charset.defaultCharset().name() ) - }&password=$pwdEncoded&salt=$salt&platform=3&authorization=Token+&version=${Config.app_ver.value}&source=copyApp®ion=$r&webp=1".toByteArray() + }&password=$pwdEncoded&salt=$salt&platform=${Config.platform.value}&authorization=Token+&version=${Config.app_ver.value}&source=copyApp®ion=$r&webp=1".toByteArray() ) c.outputStream.close() val b = c.inputStream.readBytes() @@ -129,11 +129,11 @@ class Member(private val getString: (Int) -> String) { private suspend fun postComandyLogin(username: String, pwd: String, salt: Int) = - getString(R.string.loginApiUrl).format(Config.myHostApiUrl.random()).let { u -> + getString(R.string.loginApiUrl).format(Config.myHostApiUrl.random(), Config.platform.value).let { u -> val use: suspend (String) -> ByteArray? = { it: String -> DownloadTools.getComandyApiConnection(it, "POST", null, Config.pc_ua).apply { headers["content-type"] = "application/x-www-form-urlencoded;charset=utf-8" - headers["platform"] = "3" + headers["platform"] = Config.platform.value headers["accept"] = "application/json" val r = if (!Config.net_use_foreign.value) "1" else "0" val pwdEncoded = @@ -143,7 +143,7 @@ class Member(private val getString: (Int) -> String) { username, Charset.defaultCharset().name() ) - }&password=$pwdEncoded&salt=$salt&platform=3&authorization=Token+&version=${Config.app_ver.value}&source=copyApp®ion=$r&webp=1" + }&password=$pwdEncoded&salt=$salt&platform=${Config.platform.value}&authorization=Token+&version=${Config.app_ver.value}&source=copyApp®ion=$r&webp=1" }.let { capsule -> try { val para = Gson().toJson(capsule) diff --git a/app/src/main/java/top/fumiama/copymanga/net/DownloadTools.kt b/app/src/main/java/top/fumiama/copymanga/net/DownloadTools.kt index 02cd149..348d3f5 100644 --- a/app/src/main/java/top/fumiama/copymanga/net/DownloadTools.kt +++ b/app/src/main/java/top/fumiama/copymanga/net/DownloadTools.kt @@ -46,7 +46,7 @@ object DownloadTools { Config.token.value?.let { tk -> setRequestProperty("authorization", "Token $tk") } - setRequestProperty("platform", "3") + setRequestProperty("platform", Config.platform.value) } Log.d("MyDT", "getConnection: $url\n${connection.requestProperties.map { "${it.key}: ${it.value}" }.joinToString("\n")}") return connection @@ -74,7 +74,7 @@ object DownloadTools { capsule.headers["authorization"] = "Token $tk" } } - capsule.headers["platform"] = "3" + capsule.headers["platform"] = Config.platform.value capsule.headers["dt"] = SimpleDateFormat("yyyy.MM.dd", Locale.getDefault()).format(Calendar.getInstance().time) Log.d("MyDT", "getComandyConnection: $url\n${capsule.headers.map { "${it.key}: ${it.value}" }.joinToString("\n")}") capsule diff --git a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/history/HistoryFragment.kt b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/history/HistoryFragment.kt index 31c2c29..2728eff 100644 --- a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/history/HistoryFragment.kt +++ b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/history/HistoryFragment.kt @@ -11,7 +11,7 @@ import top.fumiama.dmzj.copymanga.R @OptIn(ExperimentalStdlibApi::class) class HistoryFragment : InfoCardLoader(R.layout.fragment_history, R.id.action_nav_history_to_nav_book, isHistoryBook = true) { override fun getApiUrl() = - getString(R.string.historyApiUrl).format(Config.myHostApiUrl.random(), page * 21) + getString(R.string.historyApiUrl).format(Config.myHostApiUrl.random(), page * 21, Config.platform.value) override fun onCreate(savedInstanceState: Bundle?) { if (MainActivity.member?.hasLogin != true) { diff --git a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/newest/NewestFragment.kt b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/newest/NewestFragment.kt index 5ec5b00..4c79b06 100644 --- a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/newest/NewestFragment.kt +++ b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/newest/NewestFragment.kt @@ -7,5 +7,5 @@ import top.fumiama.dmzj.copymanga.R @ExperimentalStdlibApi class NewestFragment : InfoCardLoader(R.layout.fragment_newest, R.id.action_nav_newest_to_nav_book, true) { override fun getApiUrl() = - getString(R.string.newestApiUrl).format(Config.myHostApiUrl.random(), page * 21) + getString(R.string.newestApiUrl).format(Config.myHostApiUrl.random(), page * 21, Config.platform.value) } diff --git a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/rank/RankFragment.kt b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/rank/RankFragment.kt index f7e4f41..2c66f5b 100644 --- a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/rank/RankFragment.kt +++ b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/rank/RankFragment.kt @@ -48,11 +48,12 @@ class RankFragment : InfoCardLoader(R.layout.fragment_rank, R.id.action_nav_rank override fun getApiUrl() = getString(R.string.rankApiUrl).format( - Config.myHostApiUrl.random(), - page * 21, - sortWay[sortValue], - audienceWay[audience] - ) + Config.myHostApiUrl.random(), + page * 21, + sortWay[sortValue], + audienceWay[audience], + Config.platform.value + ) override fun setListeners() { super.setListeners() diff --git a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/recommend/RecFragment.kt b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/recommend/RecFragment.kt index 0461a84..89f7450 100644 --- a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/recommend/RecFragment.kt +++ b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/recommend/RecFragment.kt @@ -7,5 +7,5 @@ import top.fumiama.dmzj.copymanga.R @ExperimentalStdlibApi class RecFragment : InfoCardLoader(R.layout.fragment_recommend, R.id.action_nav_recommend_to_nav_book, true) { override fun getApiUrl() = - getString(R.string.recommendApiUrl).format(Config.myHostApiUrl.random(), page * 21) + getString(R.string.recommendApiUrl).format(Config.myHostApiUrl.random(), page * 21, Config.platform.value) } \ No newline at end of file diff --git a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/search/SearchFragment.kt b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/search/SearchFragment.kt index 835a5b4..eb1999d 100644 --- a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/search/SearchFragment.kt +++ b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/search/SearchFragment.kt @@ -13,7 +13,7 @@ class SearchFragment : InfoCardLoader(R.layout.fragment_search, R.id.action_nav_ private var query: String? = null private var type: String? = null override fun getApiUrl() = - getString(R.string.searchApiUrl).format(Config.myHostApiUrl.random(), page * 21, query, type) + getString(R.string.searchApiUrl).format(Config.myHostApiUrl.random(), page * 21, query, type, Config.platform.value) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) diff --git a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/shelf/ShelfFragment.kt b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/shelf/ShelfFragment.kt index e253d93..90a682d 100644 --- a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/shelf/ShelfFragment.kt +++ b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/shelf/ShelfFragment.kt @@ -28,7 +28,8 @@ class ShelfFragment : InfoCardLoader(R.layout.fragment_shelf, R.id.action_nav_su getString(R.string.shelfApiUrl).format( Config.myHostApiUrl.random(), page * 21, - sortWay[sortValue] + sortWay[sortValue], + Config.platform.value, ) override fun onCreate(savedInstanceState: Bundle?) { diff --git a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/sort/SortFragment.kt b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/sort/SortFragment.kt index fae8ecd..6a758ee 100644 --- a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/sort/SortFragment.kt +++ b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/sort/SortFragment.kt @@ -25,12 +25,13 @@ class SortFragment : StatusCardFlow(0, R.id.action_nav_sort_to_nav_book, R.layou override fun getApiUrl() = getString(R.string.sortApiUrl).format( - Config.myHostApiUrl.random(), - page * 21, - sortWay[sortValue], - if(theme >= 0 && theme < (filter?.results?.theme?.size ?: 0)) (filter?.results?.theme?.get(theme)?.path_word ?: "") else "", - if(region >= 0 && region < (filter?.results?.top?.size ?: 0)) (filter?.results?.top?.get(region)?.path_word ?: "") else "", - ) + Config.myHostApiUrl.random(), + page * 21, + sortWay[sortValue], + if(theme >= 0 && theme < (filter?.results?.theme?.size ?: 0)) (filter?.results?.theme?.get(theme)?.path_word ?: "") else "", + if(region >= 0 && region < (filter?.results?.top?.size ?: 0)) (filter?.results?.top?.get(region)?.path_word ?: "") else "", + Config.platform.value, + ) override fun onViewCreated(view: View, savedInstanceState: Bundle?) { super.onViewCreated(view, savedInstanceState) @@ -42,7 +43,7 @@ class SortFragment : StatusCardFlow(0, R.id.action_nav_sort_to_nav_book, R.layou super.setListeners() lifecycleScope.launch { setProgress(5) - PausableDownloader(getString(R.string.filterApiUrl).format(Config.myHostApiUrl.random())) { + PausableDownloader(getString(R.string.filterApiUrl).format(Config.myHostApiUrl.random(), Config.platform.value)) { if(ad?.exit == true) return@PausableDownloader it.let { it.inputStream().use { i -> diff --git a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/topic/TopicFragment.kt b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/topic/TopicFragment.kt index 3117f11..15521b5 100644 --- a/app/src/main/java/top/fumiama/copymanga/ui/cardflow/topic/TopicFragment.kt +++ b/app/src/main/java/top/fumiama/copymanga/ui/cardflow/topic/TopicFragment.kt @@ -18,13 +18,13 @@ import top.fumiama.dmzj.copymanga.R class TopicFragment : InfoCardLoader(R.layout.fragment_topic, R.id.action_nav_topic_to_nav_book) { private var type = 1 override fun getApiUrl() = - getString(R.string.topicContentApiUrl).format(Config.myHostApiUrl.random(), arguments?.getString("path"), type, offset) + getString(R.string.topicContentApiUrl).format(Config.myHostApiUrl.random(), arguments?.getString("path"), type, offset, Config.platform.value) override fun onCreate(savedInstanceState: Bundle?) { super.onCreate(savedInstanceState) lifecycleScope.launch { setProgress(5) - PausableDownloader(getString(R.string.topicApiUrl).format(Config.myHostApiUrl.random(), arguments?.getString("path"))) { data -> + PausableDownloader(getString(R.string.topicApiUrl).format(Config.myHostApiUrl.random(), arguments?.getString("path"), Config.platform.value)) { data -> setProgress(10) withContext(Dispatchers.IO) { if(ad?.exit == true) return@withContext diff --git a/app/src/main/java/top/fumiama/copymanga/ui/home/HomeFragment.kt b/app/src/main/java/top/fumiama/copymanga/ui/home/HomeFragment.kt index 956d7b1..bce45a5 100644 --- a/app/src/main/java/top/fumiama/copymanga/ui/home/HomeFragment.kt +++ b/app/src/main/java/top/fumiama/copymanga/ui/home/HomeFragment.kt @@ -299,7 +299,7 @@ class HomeFragment : NoBackRefreshFragment(R.layout.fragment_home) { query = q.toString() activity?.apply { PausableDownloader(getString(R.string.searchApiUrl).format(Config.myHostApiUrl.random(), 0, - URLEncoder.encode(q.toString(), Charset.defaultCharset().name()), type)) { + URLEncoder.encode(q.toString(), Charset.defaultCharset().name()), type, Config.platform.value)) { results = Gson().fromJson(it.decodeToString(), BookListStructure::class.java) count = results?.results?.total?:0 withContext(Dispatchers.Main) { diff --git a/app/src/main/java/top/fumiama/copymanga/ui/home/HomeHandler.kt b/app/src/main/java/top/fumiama/copymanga/ui/home/HomeHandler.kt index a2e6b92..fb711bc 100644 --- a/app/src/main/java/top/fumiama/copymanga/ui/home/HomeHandler.kt +++ b/app/src/main/java/top/fumiama/copymanga/ui/home/HomeHandler.kt @@ -40,7 +40,7 @@ import java.lang.ref.WeakReference import java.util.concurrent.atomic.AtomicInteger class HomeHandler(private val that: WeakReference) : AutoDownloadHandler({ - that.get()?.getString(R.string.mainPageApiUrl)!!.format(Config.myHostApiUrl.random()) + that.get()?.getString(R.string.mainPageApiUrl)!!.format(Config.myHostApiUrl.random(), Config.platform.value) }, IndexStructure::class.java, that.get() diff --git a/app/src/main/java/top/fumiama/copymanga/view/template/StatusCardFlow.kt b/app/src/main/java/top/fumiama/copymanga/view/template/StatusCardFlow.kt index 3f3c999..ca9f636 100644 --- a/app/src/main/java/top/fumiama/copymanga/view/template/StatusCardFlow.kt +++ b/app/src/main/java/top/fumiama/copymanga/view/template/StatusCardFlow.kt @@ -20,7 +20,8 @@ open class StatusCardFlow(private val api: Int, nav: Int, inflateRes: Int, getString(api).format( Config.myHostApiUrl.random(), page * 21, - sortWay[sortValue] + sortWay[sortValue], + Config.platform.value, ) override fun setListeners() { diff --git a/app/src/main/java/top/fumiama/copymanga/view/template/ThemeCardFlow.kt b/app/src/main/java/top/fumiama/copymanga/view/template/ThemeCardFlow.kt index 7483218..8b14658 100644 --- a/app/src/main/java/top/fumiama/copymanga/view/template/ThemeCardFlow.kt +++ b/app/src/main/java/top/fumiama/copymanga/view/template/ThemeCardFlow.kt @@ -15,7 +15,8 @@ open class ThemeCardFlow(private val api: Int, nav: Int) : StatusCardFlow(0, nav Config.myHostApiUrl.random(), page * 21, sortWay[sortValue], - theme + theme, + Config.platform.value, ) override fun onCreate(savedInstanceState: Bundle?) { diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index fbd80ae..0ee0956 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -3,6 +3,7 @@ + ]> 拷贝漫画 @@ -63,30 +64,30 @@ 预载图片头失败 读取图片大小失败 - https://%1$s/api/v3/system/network2?platform=3 - https://%1$s/api/v3/h5/homeIndex?platform=3 + https://%1$s/api/v3/system/network2?platform=%2$s + https://%1$s/api/v3/h5/homeIndex?platform=%2$s https://%1$s &hosturl; &proxyurl; - https://%1$s/api/v3/ranks?limit=21&offset=%2$d&date_type=%3$s&audience_type=%4$s&platform=3 - https://%1$s/api/v3/search/comic?limit=21&offset=%2$d&q=%3$s&q_type=%4$s&platform=3 - https://%1$s/api/v3/h5/filter/comic/tags?platform=3 - https://%1$s/api/v3/comics?limit=21&offset=%2$d&ordering=%3$s&theme=%4$s&top=%5$s&platform=3 - https://%1$s/api/v3/comic2/%2$s?platform=3 - https://%1$s/api/v3/comic2/%2$s/query?platform=3 - https://%1$s/api/v3/comic/%2$s/group/%3$s/chapters?limit=100&offset=%4$d&platform=3 - https://%1$s/api/v3/comic/%2$s/chapter%3$s/%4$s?platform=3 - https://%1$s/api/v3/topic/%2$s?platform=3 - https://%1$s/api/v3/topic/%2$s/contents?type=%3$d&limit=21&offset=%4$d&platform=3 - https://%1$s/api/v3/recs?pos=3200102&limit=21&offset=%2$d&platform=3 - https://%1$s/api/v3/update/newest?limit=21&offset=%2$d&platform=3 - https://%1$s/api/v3/comics?limit=21&offset=%2$d&ordering=%3$s&top=finish&platform=3 - https://%1$s/api/v3/comics?limit=21&offset=%2$d&ordering=%3$s&author=%4$s&platform=3 - https://%1$s/api/v3/comics?limit=21&offset=%2$d&ordering=%3$s&theme=%4$s&platform=3 - https://%1$s/api/v3/login?platform=3 - https://%1$s/api/v3/member/info?platform=3 - https://%1$s/api/v3/member/browse/comics?limit=21&offset=%2$d&platform=3 - https://%1$s/api/v3/member/collect/comics?limit=21&offset=%2$d&free_type=1&ordering=%3$s&platform=3 + https://%1$s/api/v3/ranks?limit=21&offset=%2$d&date_type=%3$s&audience_type=%4$s&platform=%5$s + https://%1$s/api/v3/search/comic?limit=21&offset=%2$d&q=%3$s&q_type=%4$s&platform=%5$s + https://%1$s/api/v3/h5/filter/comic/tags?platform=%2$s + https://%1$s/api/v3/comics?limit=21&offset=%2$d&ordering=%3$s&theme=%4$s&top=%5$s&platform=%6$s + https://%1$s/api/v3/comic2/%2$s?platform=%3$s + https://%1$s/api/v3/comic2/%2$s/query?platform=%3$s + https://%1$s/api/v3/comic/%2$s/group/%3$s/chapters?limit=100&offset=%4$d&platform=%5$s + https://%1$s/api/v3/comic/%2$s/chapter%3$s/%4$s?platform=%5$s + https://%1$s/api/v3/topic/%2$s?platform=%3$s + https://%1$s/api/v3/topic/%2$s/contents?type=%3$d&limit=21&offset=%4$d&platform=%5$s + https://%1$s/api/v3/recs?pos=3200102&limit=21&offset=%2$d&platform=%3$s + https://%1$s/api/v3/update/newest?limit=21&offset=%2$d&platform=%3$s + https://%1$s/api/v3/comics?limit=21&offset=%2$d&ordering=%3$s&top=finish&platform=%4$s + https://%1$s/api/v3/comics?limit=21&offset=%2$d&ordering=%3$s&author=%4$s&platform=%5$s + https://%1$s/api/v3/comics?limit=21&offset=%2$d&ordering=%3$s&theme=%4$s&platform=%5$s + https://%1$s/api/v3/login?platform=%2$s + https://%1$s/api/v3/member/info?platform=%2$s + https://%1$s/api/v3/member/browse/comics?limit=21&offset=%2$d&platform=%3$s + https://%1$s/api/v3/member/collect/comics?limit=21&offset=%2$d&free_type=1&ordering=%3$s&platform=%4$s https://%1$s/api/v3/member/collect/comic https://&proxyurl;/api/img?code=%1$s&url=%2$s @@ -115,6 +116,7 @@ COPY/%1$s &appver; com.copymanga.app-%1$s + &platform; 更新时间 热度 @@ -154,6 +156,8 @@ 默认主页 拷贝版本号 默认&appver; + 平台版本号 + 默认&platform; 每行加载卡片数偏移 默认为0表示无偏移, 在此基础上加减 不显示看板娘动画 diff --git a/app/src/main/res/xml/pref_setting.xml b/app/src/main/res/xml/pref_setting.xml index 835fa48..9c3153e 100644 --- a/app/src/main/res/xml/pref_setting.xml +++ b/app/src/main/res/xml/pref_setting.xml @@ -47,6 +47,17 @@ app:enableCopying="true" app:iconSpaceReserved="false" app:key="settings_cat_general_et_app_version" /> +