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;