diff --git a/app/src/main/java/com/github/catvod/ali/API.java b/app/src/main/java/com/github/catvod/ali/API.java index 89521002..75af9689 100644 --- a/app/src/main/java/com/github/catvod/ali/API.java +++ b/app/src/main/java/com/github/catvod/ali/API.java @@ -2,8 +2,10 @@ package com.github.catvod.ali; import android.app.AlertDialog; import android.content.DialogInterface; +import android.content.Intent; import android.graphics.Color; import android.graphics.drawable.ColorDrawable; +import android.os.Build; import android.os.SystemClock; import android.text.TextUtils; import android.view.Gravity; @@ -472,7 +474,7 @@ public class API { if (Utils.isMobile()) { Init.run(this::showInput); } else { - showQRCode(); + getQRCode(); } } @@ -490,7 +492,7 @@ public class API { private void onNeutral() { dismiss(); - Init.execute(this::showQRCode); + Init.execute(this::getQRCode); } private void onPositive(String text) { @@ -502,10 +504,23 @@ public class API { }); } - private void showQRCode() { - String url = "https://passport.aliyundrive.com/newlogin/qrcode/generate.do?appName=aliyun_drive&fromSite=52&appName=aliyun_drive&appEntrance=web&isMobile=false&lang=zh_CN&returnUrl=&bizParams=&_bx-v=2.2.3"; - Data data = Data.objectFrom(OkHttp.string(url)).getContent().getData(); - Init.run(() -> showQRCode(data)); + private void getQRCode() { + String json = OkHttp.string("https://passport.aliyundrive.com/newlogin/qrcode/generate.do?appName=aliyun_drive&fromSite=52&appName=aliyun_drive&appEntrance=web&isMobile=false&lang=zh_CN&returnUrl=&bizParams=&_bx-v=2.2.3"); + Data data = Data.objectFrom(json).getContent().getData(); + Init.run(() -> openApp(json, data)); + } + + private void openApp(String json, Data data) { + try { + Intent intent = new Intent(Intent.ACTION_VIEW); + intent.setClassName("com.alicloud.databox", "com.taobao.login4android.scan.QrScanActivity"); + intent.putExtra("key_scanParam", json); + Init.getActivity().startActivity(intent); + } catch (Exception e) { + showQRCode(data); + } finally { + Init.execute(() -> startService(data.getParams())); + } } private void showQRCode(Data data) { @@ -517,9 +532,10 @@ public class API { FrameLayout frame = new FrameLayout(Init.context()); params.gravity = Gravity.CENTER; frame.addView(image, params); - dialog = new AlertDialog.Builder(Init.getActivity()).setView(frame).setOnDismissListener(this::dismiss).show(); + AlertDialog.Builder builder = new AlertDialog.Builder(Init.getActivity()).setView(frame); + if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.JELLY_BEAN_MR1) builder.setOnDismissListener(this::dismiss); + dialog = builder.show(); dialog.getWindow().setBackgroundDrawable(new ColorDrawable(Color.TRANSPARENT)); - Init.execute(() -> startService(data.getParams())); Init.show("請使用阿里雲盤 App 掃描二維碼"); } catch (Exception ignored) { } diff --git a/jar/custom_spider.jar b/jar/custom_spider.jar index ff41287b..a5646226 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 eb25b5df..2c3df245 100644 --- a/jar/custom_spider.jar.md5 +++ b/jar/custom_spider.jar.md5 @@ -1 +1 @@ -1d3a24e2944970cff7f5eb9fd1fcf532 +12256c49c78305f2bedfd09b5d786620 diff --git a/json/adult.json b/json/adult.json index a470421a..a16c277c 100644 --- a/json/adult.json +++ b/json/adult.json @@ -1,5 +1,5 @@ { - "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;1d3a24e2944970cff7f5eb9fd1fcf532", + "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;12256c49c78305f2bedfd09b5d786620", "wallpaper": "https://gao.chuqiuyu.tk", "sites": [ { diff --git a/json/config.json b/json/config.json index 94c1eefa..1ed6922e 100644 --- a/json/config.json +++ b/json/config.json @@ -1,5 +1,5 @@ { - "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;1d3a24e2944970cff7f5eb9fd1fcf532", + "spider": "https://raw.githubusercontent.com/FongMi/CatVodSpider/main/jar/custom_spider.jar;md5;12256c49c78305f2bedfd09b5d786620", "wallpaper": "http://饭太硬.top/深色壁纸/api.php", "sites": [ {