diff --git a/app/src/main/assets/sample/计时器/基本读写.js b/app/src/main/assets/sample/计时器/基本读写.js new file mode 100644 index 00000000..7a777626 --- /dev/null +++ b/app/src/main/assets/sample/计时器/基本读写.js @@ -0,0 +1,7 @@ +const KEY = "key_test"; + +recorder.save(KEY); + +sleep(1e3, '±700'); + +toastLog(`Slept for ${recorder.load(KEY)} ms`, 'l'); \ No newline at end of file diff --git a/app/src/main/assets/sample/计时器/循环监测.js b/app/src/main/assets/sample/计时器/循环监测.js new file mode 100644 index 00000000..53212d34 --- /dev/null +++ b/app/src/main/assets/sample/计时器/循环监测.js @@ -0,0 +1,10 @@ +const KEY = "wait_for_test"; +const timeout = 3; // seconds + +toast(`${timeout} seconds counting down...`, 'l'); + +recorder.save(KEY); + +while (recorder.isLessThan(KEY, timeout * 1e3)) ; // @EmptyLoopBody + +toast(`Finished.\nSpent ${recorder.load(KEY) / 1e3} s.`, 'l', 'f'); \ No newline at end of file diff --git a/app/src/main/assets/sample/计时器/条件检测.js b/app/src/main/assets/sample/计时器/条件检测.js new file mode 100644 index 00000000..3d62592d --- /dev/null +++ b/app/src/main/assets/sample/计时器/条件检测.js @@ -0,0 +1,15 @@ +const KEY = "key_test"; + +recorder.save(KEY); + +!function action() { + sleep(1e3, '±700'); +}(); + +let et = recorder.load(KEY); + +if (et < 1e3) { + toastLog('Abnormal elapsed time'); +} else { + toastLog('Normal elapsed time'); +} \ No newline at end of file diff --git a/app/src/main/assets/sample/计时器/计算函数运行时间.js b/app/src/main/assets/sample/计时器/计算函数运行时间.js new file mode 100644 index 00000000..1d388142 --- /dev/null +++ b/app/src/main/assets/sample/计时器/计算函数运行时间.js @@ -0,0 +1,27 @@ +// Sample A - Simple time-consumed function + +const f = function test() { + sleep(500, '±200'); +}; + +console.log(`Function "${f.name}" spent ${recorder(f)} ms`); + +// Sample B - Fibonacci without memoization + +const fibonacci = (x) => x <= 2 ? 1 : fibonacci(x - 2) + fibonacci(x - 1); + +recorder.save('fibonacci'); + +let num = 1; +let limit = 3e3; // 3 seconds + +while (1) { + let et = recorder(fibonacci.bind(null, num)); + toastLog(`Fibonacci ${num} spent ${et} ms`, false, 'f'); + if (et > limit) { + break; + } + num += 1; +} + +toastLog('Finished'); \ No newline at end of file diff --git a/autojs/src/main/assets/modules/__images__.js b/autojs/src/main/assets/modules/__images__.js index 50ebeb6a..673ffc5c 100644 --- a/autojs/src/main/assets/modules/__images__.js +++ b/autojs/src/main/assets/modules/__images__.js @@ -235,7 +235,7 @@ module.exports = function (runtime, scope) { return opt.weakThreshold || def; }, resize(img, mat, size, fx, fy, interpolation) { - Imgproc.resize(img.mat, mat, this.parseSize(0), fx, fy, Imgproc['INTER_' + (interpolation || 'LINEAR')]); + Imgproc.resize(img.mat, mat, this.parseSize(size), fx, fy, Imgproc['INTER_' + (interpolation || 'LINEAR')]); }, /** * @param {com.stardust.autojs.core.image.ImageWrapper} img