fix: RootAutomatorEngine.forceStop not working
This commit is contained in:
@@ -9,8 +9,8 @@ android {
|
||||
applicationId "com.stardust.scriptdroid"
|
||||
minSdkVersion 17
|
||||
targetSdkVersion 23
|
||||
versionCode 159
|
||||
versionName "2.0.16 Beta"
|
||||
versionCode 160
|
||||
versionName "2.0.16 Alpha3"
|
||||
testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
|
||||
multiDexEnabled true
|
||||
ndk {
|
||||
|
||||
@@ -69,6 +69,11 @@
|
||||
"type": "markdown",
|
||||
"path":"documentation"
|
||||
},
|
||||
{
|
||||
"title": "需要Root权限的触摸与多点触摸",
|
||||
"type": "markdown",
|
||||
"path":"documentation"
|
||||
},
|
||||
{
|
||||
"title": "UI(用户界面)",
|
||||
"type": "markdown",
|
||||
|
||||
@@ -41,6 +41,8 @@ engines模块包含了一些与脚本引擎有关的函数,包括运行其他
|
||||
|
||||
停止所有正在运行的脚本并显示停止的脚本数量。包括当前脚本自身。
|
||||
|
||||
### engines.myEngine()
|
||||
|
||||
# ScriptExecution
|
||||
|
||||
执行脚本时返回的对象,可以通过他获取执行的引擎、
|
||||
|
||||
@@ -1,9 +1,13 @@
|
||||
|
||||
注意:本章节的函数在后续版本很可能有改动!请勿过分依赖本章节函数的副作用。推荐使用RootAutomator(见《需要Root权限的触摸与多点触摸》)代替本章的触摸函数。
|
||||
|
||||
以下函数均需要root权限,可以实现任意位置的点击、滑动、长按、模拟物理按键等。
|
||||
|
||||
这些函数通常首字母大写以表示其特殊的权限。
|
||||
这些函数均不返回任何值。
|
||||
并且,这些函数的执行是异步的、非实时的,在不同机型上所用的时间不同。脚本不会等待动作执行完成才继续执行。因此最好在每个函数之后加上适当的sleep来达到期望的效果。
|
||||
|
||||
|
||||
例如:
|
||||
```
|
||||
Tap(100, 100);
|
||||
|
||||
@@ -10,7 +10,7 @@ var ra = RootAutomator(context);
|
||||
### RootAutomator.tap(x, y\[, id\])
|
||||
* x \<Number\> 横坐标
|
||||
* y \<Number\> 纵坐标
|
||||
* id \<Number\> 多点触摸id。默认值为1,可以通过setDefaultId指定。
|
||||
* id \<Number\> 多点触摸id,可选,默认为1,可以通过setDefaultId指定。
|
||||
|
||||
点击位置(x, y)。其中id是一个整数值,用于区分多点触摸,不同的id表示不同的"手指",例如:
|
||||
```
|
||||
@@ -29,7 +29,7 @@ ra.exit();
|
||||
* x2 \<Number\> 滑动终点横坐标
|
||||
* y2 \<Number\> 滑动终点纵坐标
|
||||
* duration \<Number\> 滑动时长,单位毫秒,默认值为300
|
||||
* id \<Number\> 多点触摸id
|
||||
* id \<Number\> 多点触摸id,可选,默认为1
|
||||
|
||||
模拟一次从(x1, y1)到(x2, y2)的时间为duration毫秒的滑动。
|
||||
|
||||
@@ -37,28 +37,36 @@ ra.exit();
|
||||
* x \<Number\> 横坐标
|
||||
* y \<Number\> 纵坐标
|
||||
* duration \<Number\> 按下时长
|
||||
* id \<Number\> 多点触摸id
|
||||
* id \<Number\> 多点触摸id,可选,默认为1
|
||||
|
||||
模拟按下位置(x, y),时长为duration毫秒。
|
||||
|
||||
### RootAutomator.longPress(x, y[\, id\])
|
||||
* x \<Number\> 横坐标
|
||||
* y \<Number\> 纵坐标
|
||||
* duration \<Number\> 按下时长
|
||||
* id \<Number\> 多点触摸id,可选,默认为1
|
||||
|
||||
模拟长按位置(x, y)。
|
||||
|
||||
以上为简单模拟触摸操作的函数。如果要模拟一些复杂的手势,需要更底层的函数。
|
||||
|
||||
### RootAutomator.touchDown(x, y[\, id\])
|
||||
* x \<Number\> 横坐标
|
||||
* y \<Number\> 纵坐标
|
||||
* id \<Number\> 多点触摸id
|
||||
* id \<Number\> 多点触摸id,可选,默认为1
|
||||
|
||||
模拟手指按下位置(x, y)。
|
||||
|
||||
### RootAutomator.touchMove(x, y[\, id\])
|
||||
* x \<Number\> 横坐标
|
||||
* y \<Number\> 纵坐标
|
||||
* id \<Number\> 多点触摸id
|
||||
* id \<Number\> 多点触摸id,可选,默认为1
|
||||
|
||||
模拟移动手指到位置(x, y)。
|
||||
|
||||
### RootAutomator.touchUp([\id\])
|
||||
* id \<Number\> 多点触摸id
|
||||
### RootAutomator.touchUp(\[id\])
|
||||
* id \<Number\> 多点触摸id,可选,默认为1
|
||||
|
||||
模拟手指弹起。
|
||||
|
||||
|
||||
@@ -1,27 +1,28 @@
|
||||
"auto";
|
||||
var ra = new RootAutomator();
|
||||
ra.setScreenMetrics(1080, 1920);
|
||||
|
||||
setScreenMetrics(1080, 1920);
|
||||
launchApp("QQ");
|
||||
|
||||
sleep(1500);
|
||||
|
||||
//点击动态图标
|
||||
Tap(891, 1851);
|
||||
ra.tap(891, 1851);
|
||||
//点击好友动态
|
||||
Tap(192, 453);
|
||||
ra.tap(192, 453);
|
||||
//点击头像
|
||||
Tap(155, 638);
|
||||
ra.tap(155, 638);
|
||||
//点击留言
|
||||
Tap(747, 775);
|
||||
ra.tap(747, 775);
|
||||
|
||||
while(true){
|
||||
if(currentPackage() == 'com.tencent.mobileqq'){
|
||||
//点击箭头图标
|
||||
Tap(1029, 433);
|
||||
ra.tap(1029, 433);
|
||||
//点击删除
|
||||
Tap(530, 820);
|
||||
ra.tap(530, 820);
|
||||
//点击确定
|
||||
Tap(331, 1122);
|
||||
ra.tap(331, 1122);
|
||||
}
|
||||
sleep(200);
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user