From 2a67c08670381aee293bcebef5f3ead24b56cc15 Mon Sep 17 00:00:00 2001 From: Xwite <1797350009@qq.com> Date: Mon, 2 May 2022 19:41:18 +0800 Subject: [PATCH] feat:add java.startBrowser --- app/src/main/assets/help/jsHelp.md | 5 +++++ app/src/main/assets/updateLog.md | 1 + .../main/java/io/legado/app/help/JsExtensions.kt | 14 ++++++++++++++ 3 files changed, 20 insertions(+) diff --git a/app/src/main/assets/help/jsHelp.md b/app/src/main/assets/help/jsHelp.md index bbdd559ca..4b583c267 100644 --- a/app/src/main/assets/help/jsHelp.md +++ b/app/src/main/assets/help/jsHelp.md @@ -62,6 +62,11 @@ java.connect(urlStr): Response * @param js 用来取返回值的js语句, 没有就返回整个源代码 * @return 返回js获取的内容 java.webView(html: String?, url: String?, js: String?): String + +* 使用内置浏览器打开链接,可用于获取验证码 手动验证网站防爬 +* @param url 要打开的链接 +* @param title 浏览器的标题 +java.startBrowser(url: String, title: String) ``` * 调试 ``` diff --git a/app/src/main/assets/updateLog.md b/app/src/main/assets/updateLog.md index ddbe59153..d3b29e621 100644 --- a/app/src/main/assets/updateLog.md +++ b/app/src/main/assets/updateLog.md @@ -15,6 +15,7 @@ * 优化强调色和文字颜色一样的情况下一些文字的显示 * 修复bug +* js添加 java.startBrowser **2022/05/01** diff --git a/app/src/main/java/io/legado/app/help/JsExtensions.kt b/app/src/main/java/io/legado/app/help/JsExtensions.kt index 8e8c46e65..1d20f676b 100644 --- a/app/src/main/java/io/legado/app/help/JsExtensions.kt +++ b/app/src/main/java/io/legado/app/help/JsExtensions.kt @@ -15,6 +15,7 @@ import io.legado.app.help.http.* import io.legado.app.model.Debug import io.legado.app.model.analyzeRule.AnalyzeUrl import io.legado.app.model.analyzeRule.QueryTTF +import io.legado.app.ui.browser.WebViewActivity import io.legado.app.utils.* import kotlinx.coroutines.Dispatchers.IO import kotlinx.coroutines.async @@ -131,6 +132,19 @@ interface JsExtensions { } } + /** + * 使用内置浏览器打开链接,可用于获取验证码 手动验证网站防爬 + * @param url 要打开的链接 + * @param title 浏览器页面的标题 + */ + fun startBrowser(url: String, title: String) { + appCtx.startActivity { + putExtra("title", title) + putExtra("url", url) + IntentData.put(url, getSource()?.getHeaderMap(true)) + } + } + /** * 可从网络,本地文件(阅读私有缓存目录和书籍保存位置支持相对路径)导入JavaScript脚本 */