From e8f3fbdb5be6ad50a44f637f7c147fe0bf86e115 Mon Sep 17 00:00:00 2001 From: SuperMonster003 Date: Wed, 19 Nov 2025 14:42:36 +0800 Subject: [PATCH] 6.7.0 - Alpha11 - Fine tuning --- .readme/common.json | 18 +++++++------- .../autojs/runtime/api/augment/Augmentable.kt | 5 +++- .../autojs/ui/widget/CommonMarkdownView.kt | 5 ++-- .../java/org/autojs/autojs/util/RhinoUtils.kt | 24 +++++++++++-------- gradle/data/agp-releases.list | 4 ++-- .../android-studio-build-version.properties | 5 +++- .../color-picker/src/main/AndroidManifest.xml | 2 +- .../src/main/AndroidManifest.xml | 7 +++--- modules/material-dialogs/build.gradle.kts | 1 - .../src/main/AndroidManifest.xml | 3 +-- 10 files changed, 41 insertions(+), 33 deletions(-) diff --git a/.readme/common.json b/.readme/common.json index dc111dd2..428adbca 100644 --- a/.readme/common.json +++ b/.readme/common.json @@ -1,14 +1,14 @@ { - "android_studio_latest_recommended_version_name": "Android Studio Otter | 2025.2.1", - "var_date_android_studio_latest_recommended_version_name": "2025/10/30", - "android_studio_latest_recommended_file_name_of_exe": "android-studio-2025.2.1.7-windows.exe", - "android_studio_latest_recommended_download_address_of_exe": "https://redirector.gvt1.com/edgedl/android/studio/install/2025.2.1.7/android-studio-2025.2.1.7-windows.exe", - "android_studio_latest_recommended_file_size_of_exe": "1.33 GiB", - "android_studio_latest_recommended_file_name_of_zip": "android-studio-2025.2.1.7-windows.zip", - "android_studio_latest_recommended_download_address_of_zip": "https://redirector.gvt1.com/edgedl/android/studio/ide-zips/2025.2.1.7/android-studio-2025.2.1.7-windows.zip", + "android_studio_latest_recommended_version_name": "Android Studio Otter | 2025.2.1 Patch 1", + "var_date_android_studio_latest_recommended_version_name": "2025/11/17", + "android_studio_latest_recommended_file_name_of_exe": "android-studio-2025.2.1.8-windows.exe", + "android_studio_latest_recommended_download_address_of_exe": "https://redirector.gvt1.com/edgedl/android/studio/install/2025.2.1.8/android-studio-2025.2.1.8-windows.exe", + "android_studio_latest_recommended_file_size_of_exe": "1.34 GiB", + "android_studio_latest_recommended_file_name_of_zip": "android-studio-2025.2.1.8-windows.zip", + "android_studio_latest_recommended_download_address_of_zip": "https://redirector.gvt1.com/edgedl/android/studio/ide-zips/2025.2.1.8/android-studio-2025.2.1.8-windows.zip", "android_studio_latest_recommended_file_size_of_zip": "1.35 GiB", - "android_studio_latest_recommended_file_name_of_tar": "android-studio-2025.2.1.7-linux.tar.gz", - "android_studio_latest_recommended_download_address_of_tar": "https://redirector.gvt1.com/edgedl/android/studio/ide-zips/2025.2.1.7/android-studio-2025.2.1.7-linux.tar.gz", + "android_studio_latest_recommended_file_name_of_tar": "android-studio-2025.2.1.8-linux.tar.gz", + "android_studio_latest_recommended_download_address_of_tar": "https://redirector.gvt1.com/edgedl/android/studio/ide-zips/2025.2.1.8/android-studio-2025.2.1.8-linux.tar.gz", "android_studio_latest_recommended_file_size_of_tar": "1.37 GiB", "var_date_contribution_table_data_updated": "2025/09/06", "latest_rhino_engine_name_with_github_lineno_address": "[v1.8.1-SNAPSHOT](http://rhino.autojs6.com/blob/master/gradle.properties#L3)", diff --git a/app/src/main/java/org/autojs/autojs/runtime/api/augment/Augmentable.kt b/app/src/main/java/org/autojs/autojs/runtime/api/augment/Augmentable.kt index 72b35470..6841ca49 100644 --- a/app/src/main/java/org/autojs/autojs/runtime/api/augment/Augmentable.kt +++ b/app/src/main/java/org/autojs/autojs/runtime/api/augment/Augmentable.kt @@ -155,6 +155,9 @@ abstract class Augmentable(private val scriptRuntime: ScriptRuntime? = null) : F try { (this as Invokable).invoke(*args) } catch (e: Exception) { + if (ScriptInterruptedException.causedByInterrupt(e)) { + throw e + } val message = e.message?.let { msg -> when { msg.contains("\n") -> { @@ -460,7 +463,7 @@ abstract class Augmentable(private val scriptRuntime: ScriptRuntime? = null) : F }.also { it.printStackTrace() } if (ScriptInterruptedException.causedByInterrupt(e)) { - throw e + throw ScriptInterruptedException(e) } val funcNameSuffix = if (funcName != funcNameAlias) " (${globalContext.getString(R.string.text_alias)}: $funcNameAlias)" else "" val methodDescription = "$key.$funcName$funcNameSuffix" diff --git a/app/src/main/java/org/autojs/autojs/ui/widget/CommonMarkdownView.kt b/app/src/main/java/org/autojs/autojs/ui/widget/CommonMarkdownView.kt index c9f0a43f..ecbb5e1c 100644 --- a/app/src/main/java/org/autojs/autojs/ui/widget/CommonMarkdownView.kt +++ b/app/src/main/java/org/autojs/autojs/ui/widget/CommonMarkdownView.kt @@ -2,12 +2,12 @@ package org.autojs.autojs.ui.widget import android.content.Context import android.content.Intent -import android.net.Uri import android.util.AttributeSet import android.webkit.WebResourceRequest import android.webkit.WebView import android.webkit.WebViewClient import android.widget.FrameLayout +import androidx.core.net.toUri import com.afollestad.materialdialogs.MaterialDialog import org.autojs.autojs.runtime.api.Mime import org.autojs.autojs.util.TextUtils.markdownToHtml @@ -16,6 +16,7 @@ import org.autojs.autojs.util.TextUtils.markdownToHtml * Created by Stardust on Mar 5, 2017. * Transformed by SuperMonster003 on May 25, 2023. */ +@Suppress("OVERRIDE_DEPRECATION") class CommonMarkdownView : WebView { interface OnPageFinishedListener { @@ -52,7 +53,7 @@ class CommonMarkdownView : WebView { @Deprecated("Deprecated in Java") override fun shouldOverrideUrlLoading(view: WebView, url: String): Boolean { - context.startActivity(Intent(Intent.ACTION_VIEW).setData(Uri.parse(url)).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)) + context.startActivity(Intent(Intent.ACTION_VIEW).setData(url.toUri()).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)) return true } } diff --git a/app/src/main/java/org/autojs/autojs/util/RhinoUtils.kt b/app/src/main/java/org/autojs/autojs/util/RhinoUtils.kt index 397d0169..22cf0e1a 100644 --- a/app/src/main/java/org/autojs/autojs/util/RhinoUtils.kt +++ b/app/src/main/java/org/autojs/autojs/util/RhinoUtils.kt @@ -6,7 +6,6 @@ import android.content.Intent import android.os.Handler import android.os.Looper import android.os.Parcelable -import android.util.Log import org.autojs.autojs.AutoJs import org.autojs.autojs.core.automator.UiObjectCollection import org.autojs.autojs.extension.AnyExtensions.isJsNullish @@ -187,7 +186,6 @@ object RhinoUtils { } @JvmStatic - @Throws(NoSuchMethodException::class, InvocationTargetException::class, IllegalAccessException::class) fun callFunction(scriptRuntime: ScriptRuntime?, func: BaseFunction, scope: Scriptable?, thisObj: Scriptable?, args: Array): Any? = withRhinoContext { cx -> try { val niceScope = scope ?: cx.initStandardObjects() @@ -195,17 +193,23 @@ object RhinoUtils { RhinoScriptRuntime.hasTopCall(cx) -> func.call(cx, niceScope, thisObj, args) else -> RhinoScriptRuntime.doTopCall(func, cx, niceScope, thisObj, args, false) } - } catch (e: ScriptInterruptedException) { - e.message?.let { Log.v(TAG, it) } + } catch (e: InterruptedException) { + throw ScriptInterruptedException(e) } catch (e: ContinuationPending) { throw e } catch (e: Throwable) { e.printStackTrace() when { isMainThread() -> { - scriptRuntime?.exit(e) ?: throw WrappedRuntimeException(e) + scriptRuntime?.exit(e) ?: when (e) { + is ScriptInterruptedException -> throw e + else -> throw WrappedRuntimeException(e) + } + } + else -> when (e) { + is ScriptInterruptedException -> throw e + else -> throw WrappedRuntimeException(e) } - else -> throw WrappedRuntimeException(e) } } } @@ -591,15 +595,15 @@ object RhinoUtils { @Suppress("UnnecessaryVariable") @JvmStatic fun js_object_assign(tar: Scriptable?, src: Scriptable?): Scriptable = withRhinoContext { cx -> - val topeLevelScope = ImporterTopLevel(cx) + val topLevelScope = ImporterTopLevel(cx) val targetObj = when (tar != null) { - true -> toObject(cx, topeLevelScope, tar) - else -> toObject(cx, topeLevelScope, UNDEFINED) + true -> toObject(cx, topLevelScope, tar) + else -> toObject(cx, topLevelScope, UNDEFINED) } if (src.isJsNullish()) { return@withRhinoContext targetObj } - val sourceObj = toObject(cx, topeLevelScope, src) + val sourceObj = toObject(cx, topLevelScope, src) for (key in sourceObj.ids) { when (key) { is Int -> { diff --git a/gradle/data/agp-releases.list b/gradle/data/agp-releases.list index 34c626a9..f1c6ae12 100644 --- a/gradle/data/agp-releases.list +++ b/gradle/data/agp-releases.list @@ -1,5 +1,5 @@ -#Wed Nov 12 14:20:31 GMT+8 2025 -9.0.0-alpha14 +#Sat Nov 15 12:31:16 GMT+8 2025 +9.0.0-beta01 8.13.1 8.12.3 8.11.2 diff --git a/gradle/data/android-studio-build-version.properties b/gradle/data/android-studio-build-version.properties index f7b92115..972448dd 100644 --- a/gradle/data/android-studio-build-version.properties +++ b/gradle/data/android-studio-build-version.properties @@ -1,8 +1,11 @@ -#Fri Nov 07 18:08:42 GMT+8 2025 +#Wed Nov 19 13:38:14 GMT+8 2025 +252.27397.103.2523.14431943=2025.2.3.1 +252.27397.103.2522.14425743=2025.2.2.5 252.27397.103.2522.14395761=2025.2.2.4 252.25557.131.2522.14357309=2025.2.2.3 252.25557.131.2522.14326795=2025.2.2.2 252.25557.131.2522.14279661=2025.2.2.1 +252.25557.131.2521.14432022=2025.2.1.8 252.25557.131.2521.14344949=2025.2.1.7 252.25557.131.2521.14270146=2025.2.1.6 252.25557.131.2521.14240541=2025.2.1.5 diff --git a/modules/color-picker/src/main/AndroidManifest.xml b/modules/color-picker/src/main/AndroidManifest.xml index b7ccac77..cc947c56 100644 --- a/modules/color-picker/src/main/AndroidManifest.xml +++ b/modules/color-picker/src/main/AndroidManifest.xml @@ -1 +1 @@ - + diff --git a/modules/material-date-time-picker/src/main/AndroidManifest.xml b/modules/material-date-time-picker/src/main/AndroidManifest.xml index c2ef964e..678398b8 100644 --- a/modules/material-date-time-picker/src/main/AndroidManifest.xml +++ b/modules/material-date-time-picker/src/main/AndroidManifest.xml @@ -1,5 +1,4 @@ - - - + diff --git a/modules/material-dialogs/build.gradle.kts b/modules/material-dialogs/build.gradle.kts index 0767e750..698d234f 100644 --- a/modules/material-dialogs/build.gradle.kts +++ b/modules/material-dialogs/build.gradle.kts @@ -20,7 +20,6 @@ android { targetSdk = versions.sdkVersionTarget abortOnError = false } - } repositories { diff --git a/modules/material-dialogs/src/main/AndroidManifest.xml b/modules/material-dialogs/src/main/AndroidManifest.xml index 4c3f2e3e..e272cfca 100644 --- a/modules/material-dialogs/src/main/AndroidManifest.xml +++ b/modules/material-dialogs/src/main/AndroidManifest.xml @@ -1,6 +1,5 @@ + xmlns:tools="http://schemas.android.com/tools">