From 24f0043a0f1a2e5d019217f3dfafee304774b66b Mon Sep 17 00:00:00 2001 From: hyb1996 <946994919@qq.com> Date: Wed, 12 Jul 2017 14:04:06 +0800 Subject: [PATCH] release 2.0.14 Beta --- app/build.gradle | 2 +- .../main/java/com/stardust/scriptdroid/Pref.java | 7 ++++--- app/src/main/res/values/strings.xml | 2 +- .../autojs/runtime/api/image/ColorFinder.java | 3 +++ .../stardust/autojs/runtime/api/image/Images.java | 9 +++++++++ .../main/java/com/stardust/util/ScreenMetrics.java | 13 +++++++++++++ 6 files changed, 31 insertions(+), 5 deletions(-) diff --git a/app/build.gradle b/app/build.gradle index fea3a5c0..84b91f85 100644 --- a/app/build.gradle +++ b/app/build.gradle @@ -10,7 +10,7 @@ android { minSdkVersion 17 targetSdkVersion 23 versionCode 146 - versionName "2.0.14 Alpha" + versionName "2.0.14 Beta" testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner" multiDexEnabled true ndk { diff --git a/app/src/main/java/com/stardust/scriptdroid/Pref.java b/app/src/main/java/com/stardust/scriptdroid/Pref.java index 39802750..be9fc2d3 100644 --- a/app/src/main/java/com/stardust/scriptdroid/Pref.java +++ b/app/src/main/java/com/stardust/scriptdroid/Pref.java @@ -8,15 +8,13 @@ import com.stardust.autojs.runtime.api.AutomatorConfig; import com.stardust.automator.AccessibilityEventCommandHost; import com.stardust.scriptdroid.autojs.AutoJs; -import org.mozilla.javascript.tools.debugger.Dim; -import org.mozilla.javascript.tools.debugger.GuiCallback; - import java.util.concurrent.TimeUnit; /** * Created by Stardust on 2017/1/31. */ public class Pref { + private static final boolean enableRemoveAdOption = true; private static final SharedPreferences DISPOSABLE_BOOLEAN = App.getApp().getSharedPreferences("DISPOSABLE_BOOLEAN", Context.MODE_PRIVATE); private static final String KEY_SERVER_ADDRESS = "Still love you...17.5.14"; @@ -147,6 +145,9 @@ public class Pref { def().edit().putLong(KEY_LAST_SHOW_AD_MILLIS, System.currentTimeMillis()).apply(); return true; case "Off": + if (enableRemoveAdOption) { + return false; + } lastShowMillis = def().getLong(KEY_LAST_SHOW_AD_MILLIS, 0); if (System.currentTimeMillis() - lastShowMillis < TimeUnit.DAYS.toMillis(2)) { return false; diff --git a/app/src/main/res/values/strings.xml b/app/src/main/res/values/strings.xml index bded5bcb..9f1a0e13 100644 --- a/app/src/main/res/values/strings.xml +++ b/app/src/main/res/values/strings.xml @@ -225,7 +225,7 @@ 默认 每天显示一次 - 两天显示一次 + 关闭广告 diff --git a/autojs/src/main/java/com/stardust/autojs/runtime/api/image/ColorFinder.java b/autojs/src/main/java/com/stardust/autojs/runtime/api/image/ColorFinder.java index e9b46b51..d54fb3b9 100644 --- a/autojs/src/main/java/com/stardust/autojs/runtime/api/image/ColorFinder.java +++ b/autojs/src/main/java/com/stardust/autojs/runtime/api/image/ColorFinder.java @@ -3,6 +3,8 @@ package com.stardust.autojs.runtime.api.image; import android.graphics.Point; import android.graphics.Rect; import android.media.Image; +import android.os.Build; +import android.support.annotation.RequiresApi; import com.stardust.autojs.runtime.ScriptInterruptedException; import com.stardust.concurrent.VolatileBox; @@ -18,6 +20,7 @@ import java.util.concurrent.TimeUnit; * Created by Stardust on 2017/5/18. */ +@RequiresApi(api = Build.VERSION_CODES.KITKAT) public class ColorFinder { private static ThreadPoolExecutor sThreadPoolExecutor = new ThreadPoolExecutor(4, 16, 5, TimeUnit.MINUTES, new SynchronousQueue()); diff --git a/autojs/src/main/java/com/stardust/autojs/runtime/api/image/Images.java b/autojs/src/main/java/com/stardust/autojs/runtime/api/image/Images.java index 9c51d107..ed716af9 100644 --- a/autojs/src/main/java/com/stardust/autojs/runtime/api/image/Images.java +++ b/autojs/src/main/java/com/stardust/autojs/runtime/api/image/Images.java @@ -10,6 +10,7 @@ import android.graphics.Matrix; import android.media.Image; import android.os.Build; import android.support.annotation.RequiresApi; +import android.util.Log; import com.stardust.autojs.runtime.AbstractScriptRuntime; import com.stardust.autojs.runtime.ScriptInterruptedException; @@ -21,6 +22,7 @@ import com.stardust.util.ScreenMetrics; import java.io.FileNotFoundException; import java.io.FileOutputStream; import java.nio.ByteBuffer; +import java.util.Locale; /** * Created by Stardust on 2017/5/20. @@ -103,13 +105,20 @@ public class Images { } public static int pixel(Image image, int x, int y) { + int originX = x; + int originY = y; + x = ScreenMetrics.rescaleX(x, image.getWidth()); + y = ScreenMetrics.rescaleY(y, image.getHeight()); Image.Plane plane = image.getPlanes()[0]; int offset = y * plane.getRowStride() + x * plane.getPixelStride(); int c = plane.getBuffer().getInt(offset); + Log.d("Images", String.format(Locale.getDefault(), "(%d, %d)→(%d, %d)", originX, originY, x, y)); return (c & 0xff000000) + ((c & 0xff) << 16) + (c & 0x00ff00) + ((c & 0xff0000) >> 16); } public static int pixel(Bitmap bitmap, int x, int y) { + x = ScreenMetrics.rescaleX(x, bitmap.getWidth()); + y = ScreenMetrics.rescaleY(y, bitmap.getHeight()); return bitmap.getPixel(x, y); } diff --git a/common/src/main/java/com/stardust/util/ScreenMetrics.java b/common/src/main/java/com/stardust/util/ScreenMetrics.java index 0f12791a..f3b7af83 100644 --- a/common/src/main/java/com/stardust/util/ScreenMetrics.java +++ b/common/src/main/java/com/stardust/util/ScreenMetrics.java @@ -49,6 +49,19 @@ public class ScreenMetrics { return y * deviceScreenHeight / height; } + public static int rescaleX(int x, int width) { + if (width == 0 || !initialized) + return x; + return x * width / deviceScreenWidth; + } + + public static int rescaleY(int y, int height) { + if (height == 0 || !initialized) + return y; + return y * height / deviceScreenHeight; + } + + private int mScreenWidth; private int mScreenHeight;