diff --git a/.idea/dictionaries/fumiama.xml b/.idea/dictionaries/fumiama.xml index e9c54e3..d85c6ac 100644 --- a/.idea/dictionaries/fumiama.xml +++ b/.idea/dictionaries/fumiama.xml @@ -2,6 +2,7 @@ alphae + azurewebsites comandy downloaders grps diff --git a/app/proguard-rules.pro b/app/proguard-rules.pro index 9fa3036..622a543 100644 --- a/app/proguard-rules.pro +++ b/app/proguard-rules.pro @@ -76,3 +76,10 @@ } ##---------------End: proguard configuration for Gson ---------- + +-keep class com.sun.jna.** { *; } +-keep class * implements com.sun.jna.** { *; } +-dontwarn java.awt.Component +-dontwarn java.awt.GraphicsEnvironment +-dontwarn java.awt.HeadlessException +-dontwarn java.awt.Window diff --git a/app/src/main/java/top/fumiama/copymanga/tools/http/ComandyGlideModule.kt b/app/src/main/java/top/fumiama/copymanga/tools/http/ComandyGlideModule.kt index fa67fa6..b807f46 100644 --- a/app/src/main/java/top/fumiama/copymanga/tools/http/ComandyGlideModule.kt +++ b/app/src/main/java/top/fumiama/copymanga/tools/http/ComandyGlideModule.kt @@ -44,9 +44,6 @@ class ComandyGlideModule: AppGlideModule() { } try { val para = Gson().toJson(capsule) - MainActivity.mainWeakReference?.get()?.runOnUiThread { - Log.d("MyCGM", "request: $para") - } Comandy.instance!!.request(para).let { result -> Gson().fromJson(result, ComandyCapsule::class.java)!!.let { if (it.code != 200) { @@ -88,7 +85,9 @@ class ComandyGlideModule: AppGlideModule() { } override fun handles(model: GlideUrl): Boolean { - return Comandy.useComandy && Comandy.instance != null && model.toURL().let { it.protocol == "https" } + return Comandy.useComandy && Comandy.instance != null && model.toURL().let { + it.protocol == "https" && it.host != "copymanga.azurewebsites.net" + } } } diff --git a/app/src/main/java/top/fumiama/copymanga/tools/http/DownloadTools.kt b/app/src/main/java/top/fumiama/copymanga/tools/http/DownloadTools.kt index 22c5d0c..4531265 100644 --- a/app/src/main/java/top/fumiama/copymanga/tools/http/DownloadTools.kt +++ b/app/src/main/java/top/fumiama/copymanga/tools/http/DownloadTools.kt @@ -107,7 +107,7 @@ object DownloadTools { suspend fun getHttpContent(u: String, refer: String? = null, ua: String? = pc_ua): ByteArray = withContext(Dispatchers.IO) { - if (Comandy.useComandy) { + if (!u.startsWith("https://copymanga.azurewebsites.net") && Comandy.useComandy) { getComandyApiConnection(u, "GET", refer, ua).let { capsule -> val para = Gson().toJson(capsule) //Log.d("MyDT", "comandy request: $para") @@ -147,7 +147,7 @@ object DownloadTools { fun prepare(u: String, readSize: Int = -1) = run { Log.d("MyDT", "prepareHttp: $u") - FutureTask(if (Comandy.useComandy) Callable{ + FutureTask(if (!u.startsWith("https://copymanga.azurewebsites.net") && Comandy.useComandy) Callable{ try { Comandy.instance?.request(Gson().toJson( getComandyNormalConnection(u, "GET", pc_ua)) @@ -189,7 +189,7 @@ object DownloadTools { fun requestWithBody(url: String, method: String, body: ByteArray, refer: String? = referer, ua: String? = pc_ua, contentType: String? = "application/x-www-form-urlencoded;charset=utf-8"): ByteArray? { Log.d("MyDT", "$method Http: $url") var ret: ByteArray? = null - val task = FutureTask(if(Comandy.useComandy) Callable{ + val task = FutureTask(if(!url.startsWith("https://copymanga.azurewebsites.net") && Comandy.useComandy) Callable{ try { val capsule = getComandyApiConnection(url, method, refer, ua) contentType?.let { capsule.headers["content-type"] = it } diff --git a/app/src/main/java/top/fumiama/copymanga/user/Member.kt b/app/src/main/java/top/fumiama/copymanga/user/Member.kt index 309223f..56d9795 100644 --- a/app/src/main/java/top/fumiama/copymanga/user/Member.kt +++ b/app/src/main/java/top/fumiama/copymanga/user/Member.kt @@ -13,6 +13,7 @@ import top.fumiama.copymanga.tools.http.Comandy import top.fumiama.copymanga.tools.http.DownloadTools import top.fumiama.copymanga.tools.http.DownloadTools.app_ver import top.fumiama.copymanga.tools.http.DownloadTools.pc_ua +import top.fumiama.copymanga.tools.http.Proxy import top.fumiama.dmzj.copymanga.R import java.net.URLEncoder import java.nio.charset.Charset @@ -21,7 +22,7 @@ class Member(private val pref: SharedPreferences, private val getString: (Int) - val hasLogin: Boolean get() = pref.getString("token", "")?.isNotEmpty()?:false suspend fun login(username: String, pwd: String, salt: Int): LoginInfoStructure = withContext(Dispatchers.IO) { var err = "" - if (Comandy.useComandy) getComandyLoginConnection(username, pwd, salt).let { capsule -> + if (!Proxy.useApiProxy && Comandy.useComandy) getComandyLoginConnection(username, pwd, salt).let { capsule -> try { val para = Gson().toJson(capsule) Comandy.instance?.request(para)?.let { result ->