From 7ec6a739ad63e1a5377774e56d3dc1723ffa7434 Mon Sep 17 00:00:00 2001 From: hyb1996 <946994919@qq.com> Date: Wed, 12 Dec 2018 18:48:51 +0800 Subject: [PATCH] 4.1.0 Alpha3 --- .../org/autojs/autojs/ui/widget/EWebView.java | 11 ++++++++++- .../main/res/drawable-xhdpi/ic_build_apk.png | Bin 0 -> 25679 bytes .../res/layout/explorer_project_toolbar.xml | 2 +- app/src/main/res/values/strings.xml | 1 + autojs/src/main/assets/modules/__app__.js | 5 +++++ autojs/src/main/assets/modules/__threads__.js | 6 +++--- .../core/image/capture/ScreenCapturer.java | 2 +- .../autojs/engine/RhinoJavaScriptEngine.kt | 6 +----- .../res/xml/accessibility_service_config.xml | 1 - .../view/accessibility/AccessibilityService.kt | 1 + common/release/output.json | 2 +- project-versions.json | 4 ++-- 12 files changed, 26 insertions(+), 15 deletions(-) create mode 100644 app/src/main/res/drawable-xhdpi/ic_build_apk.png diff --git a/app/src/main/java/org/autojs/autojs/ui/widget/EWebView.java b/app/src/main/java/org/autojs/autojs/ui/widget/EWebView.java index 0ca3fb2b..7c0942c4 100644 --- a/app/src/main/java/org/autojs/autojs/ui/widget/EWebView.java +++ b/app/src/main/java/org/autojs/autojs/ui/widget/EWebView.java @@ -5,10 +5,13 @@ import android.app.Activity; import android.content.ActivityNotFoundException; import android.content.Context; import android.content.Intent; +import android.content.pm.ResolveInfo; import android.graphics.Bitmap; import android.net.Uri; import android.os.Build; + import androidx.annotation.RequiresApi; + import android.util.AttributeSet; import android.webkit.ValueCallback; import android.webkit.WebChromeClient; @@ -19,6 +22,7 @@ import android.webkit.WebViewClient; import android.widget.FrameLayout; import android.widget.ProgressBar; +import com.google.android.material.bottomsheet.BottomSheetDialog; import com.stardust.app.OnActivityResultDelegate; import org.autojs.autojs.R; @@ -205,8 +209,13 @@ public class EWebView extends FrameLayout implements SwipeRefreshLayout.OnRefres if (url.startsWith("http://") || url.startsWith("https://") || url.startsWith("file://")) { view.loadUrl(url); } else { + Intent intent = new Intent(Intent.ACTION_VIEW, Uri.parse(url)); + List intentActivities = getContext().getPackageManager().queryIntentActivities(intent, 0); + if (intentActivities.isEmpty()) { + return false; + } try { - getContext().startActivity(new Intent(Intent.ACTION_VIEW, Uri.parse(url))); + getContext().startActivity(Intent.createChooser(intent, getResources().getString(R.string.text_open_with))); } catch (ActivityNotFoundException e) { e.printStackTrace(); return false; diff --git a/app/src/main/res/drawable-xhdpi/ic_build_apk.png b/app/src/main/res/drawable-xhdpi/ic_build_apk.png new file mode 100644 index 0000000000000000000000000000000000000000..35067a65538fd46795b312873a920513d022c8cf GIT binary patch literal 25679 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 通过\"查看使用统计\"权限可以获取本设备过去使用应用的情况,从而使获取当前应用(currentPackage)时更准确。 手势监听 开启后将支持events手势事件,但Auto.js崩溃时可能会导致屏幕失灵 + 打开方式 描述至少要 %d 个字. 描述至少要 %d 个字. diff --git a/autojs/src/main/assets/modules/__app__.js b/autojs/src/main/assets/modules/__app__.js index 57fb965b..9d0573a5 100644 --- a/autojs/src/main/assets/modules/__app__.js +++ b/autojs/src/main/assets/modules/__app__.js @@ -62,11 +62,16 @@ module.exports = function (runtime, global) { throw new Error("class " + i + " not found"); } } + if(i instanceof android.content.Intent){ + context.startActivity(i.addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)); + return; + } if(i && i.root) { shell("am start " + app.intentToShell(i), true); }else{ context.startActivity(app.intent(i).addFlags(Intent.FLAG_ACTIVITY_NEW_TASK)); } + } app.sendBroadcast = function (i) { diff --git a/autojs/src/main/assets/modules/__threads__.js b/autojs/src/main/assets/modules/__threads__.js index 1e3c1a26..93c6dba2 100644 --- a/autojs/src/main/assets/modules/__threads__.js +++ b/autojs/src/main/assets/modules/__threads__.js @@ -10,12 +10,12 @@ module.exports = function (__runtime__, scope) { global.Promise.prototype.wait = function () { var disposable = threads.disposable(); - promise.then(result => { + this.then(result => { disposable.setAndNotify({ result: result }); }).catch(error => { - cont.resumeError({ error: error }); + disposable.setAndNotify({ error: error }); }); - var r = cont.blockedGet(); + var r = disposable.blockedGet(); if (r.error) { throw r.error; } diff --git a/autojs/src/main/java/com/stardust/autojs/core/image/capture/ScreenCapturer.java b/autojs/src/main/java/com/stardust/autojs/core/image/capture/ScreenCapturer.java index ed538bb0..2a87fd17 100644 --- a/autojs/src/main/java/com/stardust/autojs/core/image/capture/ScreenCapturer.java +++ b/autojs/src/main/java/com/stardust/autojs/core/image/capture/ScreenCapturer.java @@ -50,7 +50,7 @@ public class ScreenCapturer { private Handler mHandler; private Intent mData; private Context mContext; - private int mOrientation = Configuration.ORIENTATION_UNDEFINED; + private int mOrientation = -1; private int mDetectedOrientation; private OrientationEventListener mOrientationEventListener; diff --git a/autojs/src/main/java/com/stardust/autojs/engine/RhinoJavaScriptEngine.kt b/autojs/src/main/java/com/stardust/autojs/engine/RhinoJavaScriptEngine.kt index feccf132..d2d5f25c 100644 --- a/autojs/src/main/java/com/stardust/autojs/engine/RhinoJavaScriptEngine.kt +++ b/autojs/src/main/java/com/stardust/autojs/engine/RhinoJavaScriptEngine.kt @@ -2,8 +2,6 @@ package com.stardust.autojs.engine import android.util.Log import android.view.View - -import com.stardust.autojs.BuildConfig import com.stardust.autojs.core.ui.ViewExtras import com.stardust.autojs.engine.module.AssetAndUrlModuleSourceProvider import com.stardust.autojs.execution.ExecutionConfig @@ -14,20 +12,18 @@ import com.stardust.autojs.runtime.ScriptRuntime import com.stardust.autojs.script.JavaScriptSource import com.stardust.automator.UiObjectCollection import com.stardust.pio.UncheckedIOException - import org.mozilla.javascript.Context import org.mozilla.javascript.Script import org.mozilla.javascript.Scriptable import org.mozilla.javascript.ScriptableObject import org.mozilla.javascript.commonjs.module.RequireBuilder import org.mozilla.javascript.commonjs.module.provider.SoftCachingModuleScriptProvider - import java.io.File import java.io.IOException import java.io.InputStreamReader import java.io.Reader import java.net.URI -import java.util.Locale +import java.util.* import java.util.concurrent.ConcurrentHashMap /** diff --git a/autojs/src/main/res/xml/accessibility_service_config.xml b/autojs/src/main/res/xml/accessibility_service_config.xml index a538ccb9..84a99e00 100644 --- a/autojs/src/main/res/xml/accessibility_service_config.xml +++ b/autojs/src/main/res/xml/accessibility_service_config.xml @@ -3,7 +3,6 @@ android:accessibilityEventTypes="typeAllMask" android:accessibilityFeedbackType="feedbackAllMask" android:accessibilityFlags="flagIncludeNotImportantViews|flagReportViewIds|flagRetrieveInteractiveWindows|flagRequestEnhancedWebAccessibility|flagRequestFilterKeyEvents" - android:canPerformGestures="true" android:canRequestEnhancedWebAccessibility="true" android:canRequestFilterKeyEvents="true" android:canRetrieveWindowContent="true" diff --git a/automator/src/main/java/com/stardust/view/accessibility/AccessibilityService.kt b/automator/src/main/java/com/stardust/view/accessibility/AccessibilityService.kt index c9594380..934ab093 100644 --- a/automator/src/main/java/com/stardust/view/accessibility/AccessibilityService.kt +++ b/automator/src/main/java/com/stardust/view/accessibility/AccessibilityService.kt @@ -95,6 +95,7 @@ open class AccessibilityService : android.accessibilityservice.AccessibilityServ } override fun onDestroy() { + Log.v(TAG, "onDestroy: $instance") instance = null mEventExecutor?.shutdownNow() super.onDestroy() diff --git a/common/release/output.json b/common/release/output.json index ea424bdc..cf367a7b 100644 --- a/common/release/output.json +++ b/common/release/output.json @@ -1 +1 @@ -[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":452,"versionName":"4.1.0 Alpha2","enabled":true,"outputFile":"commonRelease-4.1.0 Alpha2.apk","fullName":"commonRelease","baseName":"common-release"},"path":"commonRelease-4.1.0 Alpha2.apk","properties":{}}] \ No newline at end of file +[{"outputType":{"type":"APK"},"apkInfo":{"type":"MAIN","splits":[],"versionCode":453,"versionName":"4.1.0 Alpha3","enabled":true,"outputFile":"commonRelease-4.1.0 Alpha3.apk","fullName":"commonRelease","baseName":"common-release"},"path":"commonRelease-4.1.0 Alpha3.apk","properties":{}}] \ No newline at end of file diff --git a/project-versions.json b/project-versions.json index 992cadec..9ff25112 100644 --- a/project-versions.json +++ b/project-versions.json @@ -1,6 +1,6 @@ { - "appVersionCode": 452, - "appVersionName": "4.1.0 Alpha2", + "appVersionCode": 453, + "appVersionName": "4.1.0 Alpha3", "target": 28, "mini": 17, "compile": 28,