6.7.0 - Alpha18 - 修复文档独立页面退出时导致应用崩溃的问题

This commit is contained in:
SuperMonster003
2026-01-26 20:15:57 +08:00
parent 178c232dfd
commit 95f5ba6308
7 changed files with 32 additions and 15 deletions

View File

@@ -1,7 +1,7 @@
{ {
"$data": { "$data": {
"v6.7.0": { "v6.7.0": {
"released_date": "2026/01/24", "released_date": "2026/01/26",
"feature": [ "feature": [
"插件中心功能, 支持插件的安装/卸载/更新等操作 (入口: 主页抽屉按钮/主页标签页)", "插件中心功能, 支持插件的安装/卸载/更新等操作 (入口: 主页抽屉按钮/主页标签页)",
"Paddle OCR (PP-OCRv5) 插件, 用于光学字符识别", "Paddle OCR (PP-OCRv5) 插件, 用于光学字符识别",

View File

@@ -3,10 +3,12 @@ package org.autojs.autojs.ui.doc
import android.os.Bundle import android.os.Bundle
import android.webkit.WebView import android.webkit.WebView
import androidx.activity.OnBackPressedCallback import androidx.activity.OnBackPressedCallback
import org.autojs.autojs.event.BackPressedHandler
import org.autojs.autojs.ui.BaseActivity import org.autojs.autojs.ui.BaseActivity
import org.autojs.autojs.util.DocsUtils.getUrl import org.autojs.autojs.util.DocsUtils.getUrl
import org.autojs.autojs.util.ViewUtils import org.autojs.autojs.util.ViewUtils
import org.autojs.autojs.util.WebViewUtils import org.autojs.autojs.util.WebViewUtils
import org.autojs.autojs6.R
import org.autojs.autojs6.databinding.ActivityDocumentationBinding import org.autojs.autojs6.databinding.ActivityDocumentationBinding
import org.intellij.lang.annotations.Language import org.intellij.lang.annotations.Language
@@ -17,6 +19,10 @@ import org.intellij.lang.annotations.Language
*/ */
class DocumentationActivity : BaseActivity() { class DocumentationActivity : BaseActivity() {
override val handleStatusBarThemeColorAutomatically = false
private val mBackPressedHandler = BackPressedHandler.Observer()
private val mOnBackPressedCallback = object : OnBackPressedCallback(true) { private val mOnBackPressedCallback = object : OnBackPressedCallback(true) {
// override fun onBackPressed() { // override fun onBackPressed() {
@@ -30,12 +36,18 @@ class DocumentationActivity : BaseActivity() {
override fun handleOnBackPressed() { override fun handleOnBackPressed() {
if (mWebView.canGoBack()) { if (mWebView.canGoBack()) {
mWebView.goBack() mWebView.goBack()
} else { return
onBackPressedDispatcher.onBackPressed()
} }
if (mBackPressedHandler.onBackPressed(this@DocumentationActivity)) {
return
}
isEnabled = false
onBackPressedDispatcher.onBackPressed()
isEnabled = true
} }
} }
override val handleStatusBarThemeColorAutomatically = false
private lateinit var mWebView: WebView private lateinit var mWebView: WebView
@@ -60,6 +72,11 @@ class DocumentationActivity : BaseActivity() {
} }
} }
handleBackPressedHandlerAndCallback()
}
private fun handleBackPressedHandlerAndCallback() {
mBackPressedHandler.registerHandler(BackPressedHandler.DoublePressExit(this, R.string.text_press_again_to_exit))
onBackPressedDispatcher.addCallback(this, mOnBackPressedCallback) onBackPressedDispatcher.addCallback(this, mOnBackPressedCallback)
} }

View File

@@ -102,7 +102,7 @@ class MainActivity : BaseActivity(), DelegateHost, HostActivity {
// 2. Then, let the global Observer handle it (DrawerAutoClose / DoublePressExit). // 2. Then, let the global Observer handle it (DrawerAutoClose / DoublePressExit).
// zh-CN: 再给全局 Observer 处理 (DrawerAutoClose / DoublePressExit). // zh-CN: 再给全局 Observer 处理 (DrawerAutoClose / DoublePressExit).
if (mBackPressObserver.onBackPressed(this@MainActivity)) { if (mBackPressedObserver.onBackPressed(this@MainActivity)) {
return return
} }
@@ -125,7 +125,7 @@ class MainActivity : BaseActivity(), DelegateHost, HostActivity {
private val mActivityResultMediator = OnActivityResultDelegate.Mediator() private val mActivityResultMediator = OnActivityResultDelegate.Mediator()
private val mRequestPermissionCallbacks = RequestPermissionCallbacks() private val mRequestPermissionCallbacks = RequestPermissionCallbacks()
private val mBackPressObserver = BackPressedHandler.Observer() private val mBackPressedObserver = BackPressedHandler.Observer()
private val mForeGroundService = ForegroundService(this) private val mForeGroundService = ForegroundService(this)
private var mSearchViewItem: SearchViewItem? = null private var mSearchViewItem: SearchViewItem? = null
private val mA11yTool = AccessibilityTool(this) private val mA11yTool = AccessibilityTool(this)
@@ -222,8 +222,8 @@ class MainActivity : BaseActivity(), DelegateHost, HostActivity {
} }
private fun registerBackPressHandlers(drawerLayout: DrawerLayout) { private fun registerBackPressHandlers(drawerLayout: DrawerLayout) {
mBackPressObserver.registerHandler(DrawerAutoClose(drawerLayout, Gravity.START)) mBackPressedObserver.registerHandler(DrawerAutoClose(drawerLayout, Gravity.START))
mBackPressObserver.registerHandler(DoublePressExit(this, R.string.text_press_again_to_exit)) mBackPressedObserver.registerHandler(DoublePressExit(this, R.string.text_press_again_to_exit))
} }
private fun setUpToolbar(drawerLayout: DrawerLayout) { private fun setUpToolbar(drawerLayout: DrawerLayout) {
@@ -384,7 +384,7 @@ class MainActivity : BaseActivity(), DelegateHost, HostActivity {
override fun getOnActivityResultDelegateMediator() = mActivityResultMediator override fun getOnActivityResultDelegateMediator() = mActivityResultMediator
override fun getBackPressedObserver() = mBackPressObserver override fun getBackPressedObserver() = mBackPressedObserver
override fun onCreateOptionsMenu(menu: Menu): Boolean { override fun onCreateOptionsMenu(menu: Menu): Boolean {
menuInflater.inflate(R.menu.menu_main, menu) menuInflater.inflate(R.menu.menu_main, menu)

View File

@@ -966,7 +966,7 @@
<string name="text_preset_dialog_content">預設對話框內容</string> <string name="text_preset_dialog_content">預設對話框內容</string>
<string name="text_preset_dialog_title">預設對話框標題</string> <string name="text_preset_dialog_title">預設對話框標題</string>
<string name="text_press_again_to_dismiss_dialog">再按一次關閉對話框</string> <string name="text_press_again_to_dismiss_dialog">再按一次關閉對話框</string>
<string name="text_press_again_to_exit">再按一次退出應用</string> <string name="text_press_again_to_exit">再按一次退出</string>
<string name="text_press_back_or_vol_down_to_close_window">如需關閉窗口, 可按 \"返回鍵\" 或 \"音量減鍵\"</string> <string name="text_press_back_or_vol_down_to_close_window">如需關閉窗口, 可按 \"返回鍵\" 或 \"音量減鍵\"</string>
<string name="text_preview">預覽</string> <string name="text_preview">預覽</string>
<string name="text_process_log">流程日誌</string> <string name="text_process_log">流程日誌</string>

View File

@@ -966,7 +966,7 @@
<string name="text_preset_dialog_content">預設對話方塊內容</string> <string name="text_preset_dialog_content">預設對話方塊內容</string>
<string name="text_preset_dialog_title">預設對話方塊標題</string> <string name="text_preset_dialog_title">預設對話方塊標題</string>
<string name="text_press_again_to_dismiss_dialog">再按一次關閉對話方塊</string> <string name="text_press_again_to_dismiss_dialog">再按一次關閉對話方塊</string>
<string name="text_press_again_to_exit">再按一次退出應用</string> <string name="text_press_again_to_exit">再按一次退出</string>
<string name="text_press_back_or_vol_down_to_close_window">如需關閉視窗, 可按 \"返回鍵\" 或 \"音量減鍵\"</string> <string name="text_press_back_or_vol_down_to_close_window">如需關閉視窗, 可按 \"返回鍵\" 或 \"音量減鍵\"</string>
<string name="text_preview">預覽</string> <string name="text_preview">預覽</string>
<string name="text_process_log">流程日誌</string> <string name="text_process_log">流程日誌</string>

View File

@@ -966,7 +966,7 @@
<string name="text_preset_dialog_content">预设对话框内容</string> <string name="text_preset_dialog_content">预设对话框内容</string>
<string name="text_preset_dialog_title">预设对话框标题</string> <string name="text_preset_dialog_title">预设对话框标题</string>
<string name="text_press_again_to_dismiss_dialog">再按一次关闭对话框</string> <string name="text_press_again_to_dismiss_dialog">再按一次关闭对话框</string>
<string name="text_press_again_to_exit">再按一次退出应用</string> <string name="text_press_again_to_exit">再按一次退出</string>
<string name="text_press_back_or_vol_down_to_close_window">如需关闭窗口, 可按 \"返回键\" 或 \"音量减键\"</string> <string name="text_press_back_or_vol_down_to_close_window">如需关闭窗口, 可按 \"返回键\" 或 \"音量减键\"</string>
<string name="text_preview">预览</string> <string name="text_preview">预览</string>
<string name="text_process_log">流程日志</string> <string name="text_process_log">流程日志</string>

View File

@@ -1,5 +1,5 @@
#Mon Jan 26 14:25:52 CST 2026 #Mon Jan 26 20:13:03 CST 2026
BUILD_TIME=1769408752043 BUILD_TIME=1769429583143
COMPILE_SDK_VERSION=36 COMPILE_SDK_VERSION=36
IMAGE_QUANT_CMAKE_VERSION=3.22.1 IMAGE_QUANT_CMAKE_VERSION=3.22.1
IMAGE_QUANT_NDK_VERSION=26.1.10909125 IMAGE_QUANT_NDK_VERSION=26.1.10909125
@@ -27,6 +27,6 @@ RAPID_OCR_OPENCV_MOBILE_LABEL_VERSION=13
RAPID_OCR_OPENCV_MOBILE_VERSION=4.5.3 RAPID_OCR_OPENCV_MOBILE_VERSION=4.5.3
TARGET_SDK_VERSION=36 TARGET_SDK_VERSION=36
TARGET_SDK_VERSION_INRT=29 TARGET_SDK_VERSION_INRT=29
VERSION_BUILD=3657 VERSION_BUILD=3658
VERSION_NAME=6.7.0 Alpha18 VERSION_NAME=6.7.0 Alpha18
VSCODE_EXT_REQUIRED_VERSION=1.0.13 VSCODE_EXT_REQUIRED_VERSION=1.0.13