6.7.0 - Alpha11 - Fine tuning

This commit is contained in:
SuperMonster003
2025-11-19 14:42:36 +08:00
parent 9b72e0deea
commit e8f3fbdb5b
10 changed files with 41 additions and 33 deletions

View File

@@ -1,14 +1,14 @@
{ {
"android_studio_latest_recommended_version_name": "Android Studio Otter | 2025.2.1", "android_studio_latest_recommended_version_name": "Android Studio Otter | 2025.2.1 Patch 1",
"var_date_android_studio_latest_recommended_version_name": "2025/10/30", "var_date_android_studio_latest_recommended_version_name": "2025/11/17",
"android_studio_latest_recommended_file_name_of_exe": "android-studio-2025.2.1.7-windows.exe", "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.7/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.8/android-studio-2025.2.1.8-windows.exe",
"android_studio_latest_recommended_file_size_of_exe": "1.33 GiB", "android_studio_latest_recommended_file_size_of_exe": "1.34 GiB",
"android_studio_latest_recommended_file_name_of_zip": "android-studio-2025.2.1.7-windows.zip", "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.7/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.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_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_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.7/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.8/android-studio-2025.2.1.8-linux.tar.gz",
"android_studio_latest_recommended_file_size_of_tar": "1.37 GiB", "android_studio_latest_recommended_file_size_of_tar": "1.37 GiB",
"var_date_contribution_table_data_updated": "2025/09/06", "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)", "latest_rhino_engine_name_with_github_lineno_address": "[v1.8.1-SNAPSHOT](http://rhino.autojs6.com/blob/master/gradle.properties#L3)",

View File

@@ -155,6 +155,9 @@ abstract class Augmentable(private val scriptRuntime: ScriptRuntime? = null) : F
try { try {
(this as Invokable).invoke(*args) (this as Invokable).invoke(*args)
} catch (e: Exception) { } catch (e: Exception) {
if (ScriptInterruptedException.causedByInterrupt(e)) {
throw e
}
val message = e.message?.let { msg -> val message = e.message?.let { msg ->
when { when {
msg.contains("\n") -> { msg.contains("\n") -> {
@@ -460,7 +463,7 @@ abstract class Augmentable(private val scriptRuntime: ScriptRuntime? = null) : F
}.also { it.printStackTrace() } }.also { it.printStackTrace() }
if (ScriptInterruptedException.causedByInterrupt(e)) { if (ScriptInterruptedException.causedByInterrupt(e)) {
throw e throw ScriptInterruptedException(e)
} }
val funcNameSuffix = if (funcName != funcNameAlias) " (${globalContext.getString(R.string.text_alias)}: $funcNameAlias)" else "" val funcNameSuffix = if (funcName != funcNameAlias) " (${globalContext.getString(R.string.text_alias)}: $funcNameAlias)" else ""
val methodDescription = "$key.$funcName$funcNameSuffix" val methodDescription = "$key.$funcName$funcNameSuffix"

View File

@@ -2,12 +2,12 @@ package org.autojs.autojs.ui.widget
import android.content.Context import android.content.Context
import android.content.Intent import android.content.Intent
import android.net.Uri
import android.util.AttributeSet import android.util.AttributeSet
import android.webkit.WebResourceRequest import android.webkit.WebResourceRequest
import android.webkit.WebView import android.webkit.WebView
import android.webkit.WebViewClient import android.webkit.WebViewClient
import android.widget.FrameLayout import android.widget.FrameLayout
import androidx.core.net.toUri
import com.afollestad.materialdialogs.MaterialDialog import com.afollestad.materialdialogs.MaterialDialog
import org.autojs.autojs.runtime.api.Mime import org.autojs.autojs.runtime.api.Mime
import org.autojs.autojs.util.TextUtils.markdownToHtml 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. * Created by Stardust on Mar 5, 2017.
* Transformed by SuperMonster003 on May 25, 2023. * Transformed by SuperMonster003 on May 25, 2023.
*/ */
@Suppress("OVERRIDE_DEPRECATION")
class CommonMarkdownView : WebView { class CommonMarkdownView : WebView {
interface OnPageFinishedListener { interface OnPageFinishedListener {
@@ -52,7 +53,7 @@ class CommonMarkdownView : WebView {
@Deprecated("Deprecated in Java") @Deprecated("Deprecated in Java")
override fun shouldOverrideUrlLoading(view: WebView, url: String): Boolean { 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 return true
} }
} }

View File

@@ -6,7 +6,6 @@ import android.content.Intent
import android.os.Handler import android.os.Handler
import android.os.Looper import android.os.Looper
import android.os.Parcelable import android.os.Parcelable
import android.util.Log
import org.autojs.autojs.AutoJs import org.autojs.autojs.AutoJs
import org.autojs.autojs.core.automator.UiObjectCollection import org.autojs.autojs.core.automator.UiObjectCollection
import org.autojs.autojs.extension.AnyExtensions.isJsNullish import org.autojs.autojs.extension.AnyExtensions.isJsNullish
@@ -187,7 +186,6 @@ object RhinoUtils {
} }
@JvmStatic @JvmStatic
@Throws(NoSuchMethodException::class, InvocationTargetException::class, IllegalAccessException::class)
fun callFunction(scriptRuntime: ScriptRuntime?, func: BaseFunction, scope: Scriptable?, thisObj: Scriptable?, args: Array<Any?>): Any? = withRhinoContext { cx -> fun callFunction(scriptRuntime: ScriptRuntime?, func: BaseFunction, scope: Scriptable?, thisObj: Scriptable?, args: Array<Any?>): Any? = withRhinoContext { cx ->
try { try {
val niceScope = scope ?: cx.initStandardObjects() val niceScope = scope ?: cx.initStandardObjects()
@@ -195,17 +193,23 @@ object RhinoUtils {
RhinoScriptRuntime.hasTopCall(cx) -> func.call(cx, niceScope, thisObj, args) RhinoScriptRuntime.hasTopCall(cx) -> func.call(cx, niceScope, thisObj, args)
else -> RhinoScriptRuntime.doTopCall(func, cx, niceScope, thisObj, args, false) else -> RhinoScriptRuntime.doTopCall(func, cx, niceScope, thisObj, args, false)
} }
} catch (e: ScriptInterruptedException) { } catch (e: InterruptedException) {
e.message?.let { Log.v(TAG, it) } throw ScriptInterruptedException(e)
} catch (e: ContinuationPending) { } catch (e: ContinuationPending) {
throw e throw e
} catch (e: Throwable) { } catch (e: Throwable) {
e.printStackTrace() e.printStackTrace()
when { when {
isMainThread() -> { 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") @Suppress("UnnecessaryVariable")
@JvmStatic @JvmStatic
fun js_object_assign(tar: Scriptable?, src: Scriptable?): Scriptable = withRhinoContext { cx -> fun js_object_assign(tar: Scriptable?, src: Scriptable?): Scriptable = withRhinoContext { cx ->
val topeLevelScope = ImporterTopLevel(cx) val topLevelScope = ImporterTopLevel(cx)
val targetObj = when (tar != null) { val targetObj = when (tar != null) {
true -> toObject(cx, topeLevelScope, tar) true -> toObject(cx, topLevelScope, tar)
else -> toObject(cx, topeLevelScope, UNDEFINED) else -> toObject(cx, topLevelScope, UNDEFINED)
} }
if (src.isJsNullish()) { if (src.isJsNullish()) {
return@withRhinoContext targetObj return@withRhinoContext targetObj
} }
val sourceObj = toObject(cx, topeLevelScope, src) val sourceObj = toObject(cx, topLevelScope, src)
for (key in sourceObj.ids) { for (key in sourceObj.ids) {
when (key) { when (key) {
is Int -> { is Int -> {

View File

@@ -1,5 +1,5 @@
#Wed Nov 12 14:20:31 GMT+8 2025 #Sat Nov 15 12:31:16 GMT+8 2025
9.0.0-alpha14 9.0.0-beta01
8.13.1 8.13.1
8.12.3 8.12.3
8.11.2 8.11.2

View File

@@ -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.27397.103.2522.14395761=2025.2.2.4
252.25557.131.2522.14357309=2025.2.2.3 252.25557.131.2522.14357309=2025.2.2.3
252.25557.131.2522.14326795=2025.2.2.2 252.25557.131.2522.14326795=2025.2.2.2
252.25557.131.2522.14279661=2025.2.2.1 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.14344949=2025.2.1.7
252.25557.131.2521.14270146=2025.2.1.6 252.25557.131.2521.14270146=2025.2.1.6
252.25557.131.2521.14240541=2025.2.1.5 252.25557.131.2521.14240541=2025.2.1.5

View File

@@ -1 +1 @@
<manifest package="com.jaredrummler.android.colorpicker"/> <manifest />

View File

@@ -1,5 +1,4 @@
<?xml version="1.0" encoding="utf-8"?> <?xml version="1.0" encoding="utf-8"?><!-- Copyright (C) 2013 The Android Open Source Project
<!-- Copyright (C) 2013 The Android Open Source Project
Licensed under the Apache License, Version 2.0 (the "License"); Licensed under the Apache License, Version 2.0 (the "License");
you may not use this file except in compliance with the License. you may not use this file except in compliance with the License.
@@ -13,8 +12,8 @@
See the License for the specific language governing permissions and See the License for the specific language governing permissions and
limitations under the License. limitations under the License.
--> -->
<manifest xmlns:android="http://schemas.android.com/apk/res/android" <manifest
package="com.wdullaer.materialdatetimepicker" > xmlns:android="http://schemas.android.com/apk/res/android">
<uses-permission android:name="android.permission.VIBRATE" /> <uses-permission android:name="android.permission.VIBRATE" />

View File

@@ -20,7 +20,6 @@ android {
targetSdk = versions.sdkVersionTarget targetSdk = versions.sdkVersionTarget
abortOnError = false abortOnError = false
} }
} }
repositories { repositories {

View File

@@ -1,6 +1,5 @@
<manifest <manifest
xmlns:tools="http://schemas.android.com/tools" xmlns:tools="http://schemas.android.com/tools">
package="com.afollestad.materialdialogs">
<uses-sdk tools:overrideLibrary="me.zhanghai.android.materialprogressbar" /> <uses-sdk tools:overrideLibrary="me.zhanghai.android.materialprogressbar" />