deeke-script-app 1.0.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (36) hide show
  1. package/.vscode/settings.json +9 -0
  2. package/@deekeScript/@type/Class/Rect.d.ts +14 -0
  3. package/@deekeScript/@type/Class/UiSelector.d.ts +192 -0
  4. package/@deekeScript/@type/README.md +19 -0
  5. package/@deekeScript/@type/interface/App.d.ts +93 -0
  6. package/@deekeScript/@type/interface/Console.d.ts +46 -0
  7. package/@deekeScript/@type/interface/DeekeScript.d.ts +9 -0
  8. package/@deekeScript/@type/interface/Device.d.ts +78 -0
  9. package/@deekeScript/@type/interface/Dialogs.d.ts +41 -0
  10. package/@deekeScript/@type/interface/Encrypt.d.ts +58 -0
  11. package/@deekeScript/@type/interface/Engines.d.ts +24 -0
  12. package/@deekeScript/@type/interface/FloatDialogs.d.ts +20 -0
  13. package/@deekeScript/@type/interface/Gesture.d.ts +54 -0
  14. package/@deekeScript/@type/interface/Http.d.ts +41 -0
  15. package/@deekeScript/@type/interface/Intent.d.ts +12 -0
  16. package/@deekeScript/@type/interface/Storage.d.ts +109 -0
  17. package/@deekeScript/@type/interface/System.d.ts +102 -0
  18. package/@deekeScript/@type/interface/UiObject.d.ts +223 -0
  19. package/README.md +35 -0
  20. package/deekeScript.json +2089 -0
  21. package/images/a.png +0 -0
  22. package/package.json +42 -0
  23. package/script/index.js +44 -0
  24. package/script/index.js.map +1 -0
  25. package/script/task/task.js +88 -0
  26. package/script/task/task.js.map +1 -0
  27. package/script/task/test.js +57 -0
  28. package/script/task/test.js.map +1 -0
  29. package/src/deekeScriptZipBuild +47 -0
  30. package/src/index.ts +1 -0
  31. package/src/task/code.js +4 -0
  32. package/src/task/task.ts +16 -0
  33. package/src/task/test.ts +14 -0
  34. package/test.js +169 -0
  35. package/tsconfig.json +107 -0
  36. package/webpack.config.js +56 -0
@@ -0,0 +1,12 @@
1
+ declare global {
2
+ var Intent: Intent;
3
+ }
4
+
5
+ interface Intent {
6
+ /**
7
+ * open
8
+ */
9
+ public open(): void
10
+ }
11
+
12
+ export { };
@@ -0,0 +1,109 @@
1
+ declare global {
2
+ var Storage: Storage;
3
+ }
4
+
5
+ interface Storage {
6
+ /**
7
+ * 创建存储实例 全局使用一个即可
8
+ * @param db 数据库名称
9
+ * @return 返回当前实例,如果已存在则直接返回
10
+ */
11
+ public create(db: string): Storage;
12
+
13
+ /**
14
+ * 设置字符串
15
+ * @param key 键
16
+ * @param value 值
17
+ */
18
+ public put(key: string, value: string): boolean;
19
+
20
+ /**
21
+ * 设置整型值
22
+ * @param key 键
23
+ * @param value 值
24
+ */
25
+ public putInteger(key: string, value: number): boolean;
26
+
27
+ /**
28
+ * 设置bool
29
+ * @param key 键
30
+ * @param value 值
31
+ */
32
+ public putBool(key: string, value: boolean): boolean;
33
+
34
+ /**
35
+ * 设置双精度值
36
+ * @param key 键
37
+ * @param value 值
38
+ */
39
+ public putDouble(key: string, value: number): boolean;
40
+
41
+ /**
42
+ * 设置对象
43
+ * @param key 键
44
+ * @param obj 值
45
+ */
46
+ public putObj(key: string, obj: object): boolean;
47
+
48
+ /**
49
+ * 设置集合(字符串)
50
+ * @param key 键
51
+ * @param set 值
52
+ */
53
+ public putSet(key: string, set: Set<string>): boolean;
54
+
55
+ /**
56
+ * 获取集合(字符串)
57
+ * @param key 键
58
+ */
59
+ public getArray(key: string): Set<string>;
60
+
61
+ /**
62
+ * 获取字符串
63
+ * @param key 键
64
+ */
65
+ public get(key: string): string;
66
+
67
+ /**
68
+ * 获取字符串
69
+ * @param key 键
70
+ */
71
+ public getString(key: string): string;
72
+
73
+ /**
74
+ * 获取bool类型的值
75
+ * @param key 键
76
+ */
77
+ public getBoolean(key: string): boolean;
78
+
79
+ /**
80
+ * 获取Double类型的值
81
+ * @param key 键
82
+ */
83
+ public getDouble(key: string): number;
84
+
85
+ /**
86
+ * 获取整型类型的值
87
+ * @param key 键
88
+ */
89
+ public getInteger(key: string): number;
90
+
91
+ /**
92
+ * 获取对象类型的值
93
+ * @param key 键
94
+ */
95
+ public getObject(key: string): object;
96
+
97
+ /**
98
+ * 移除某个键
99
+ * @param key 键
100
+ */
101
+ public remove(key: string): boolean;
102
+
103
+ /**
104
+ * 清空所有值
105
+ */
106
+ public clear(): boolean;
107
+ }
108
+
109
+ export { };
@@ -0,0 +1,102 @@
1
+ declare global {
2
+ var System: System;
3
+ }
4
+
5
+ interface System {
6
+ /**
7
+ * 休眠
8
+ * @param milliSecond 毫秒
9
+ */
10
+ public sleep(milliSecond: number): void;
11
+
12
+ /**
13
+ * 释放内存
14
+ */
15
+ public gc(): void;
16
+
17
+ /**
18
+ * 获取当前时间 yyyy-MM-dd HH:mm:ss.SSS 格式
19
+ */
20
+ public time(): string;
21
+
22
+ /**
23
+ * 获取当前Activity
24
+ */
25
+ public currentActivity(): string;
26
+
27
+ /**
28
+ * 获取当前包名
29
+ */
30
+ public currentPackage(): string;
31
+
32
+ /**
33
+ * 将内容设置到剪切板中
34
+ * @param text 剪切板内容
35
+ */
36
+ public setClip(text: string): void;
37
+
38
+ /**
39
+ * 获取剪切板内容
40
+ */
41
+ public getClip(): string;
42
+
43
+ /**
44
+ * 吐司
45
+ * @param text 显示文本
46
+ */
47
+ public toast(text: string): void;
48
+
49
+ /**
50
+ * 吐司(显示时间较长)
51
+ * @param text 显示文本
52
+ */
53
+ public toastLong(text: string): void;
54
+
55
+ /**
56
+ *
57
+ * @param activity 等待的Activity
58
+ * @param period 每次时间间隔
59
+ * @param timeout 等待的总时间
60
+ */
61
+ public waitForActivity(activity: string, period: number, timeout: number): boolean;
62
+
63
+ /**
64
+ *
65
+ * @param activity 等待的PackageName的App启动
66
+ * @param period 每次时间间隔
67
+ * @param timeout 等待的总时间
68
+ */
69
+ public waitForPackage(packageName: string, period: number, timeout: number): boolean;
70
+
71
+ /**
72
+ * 停止所有脚本
73
+ */
74
+ public exit(): void;
75
+
76
+ /**
77
+ * 缓存清理
78
+ */
79
+ public cleanUp(): void;
80
+
81
+ /**
82
+ * 获取智能话术token
83
+ * @param key 智能话术key
84
+ * @param secret 智能话术secret
85
+ */
86
+ public AiSpeechToken(key: string, secret: string): string;
87
+
88
+ /**
89
+ * 生成窗口元素,使用App的上传日志,可以拿到文件
90
+ */
91
+ public generateWindowElements(): void;
92
+
93
+ /**
94
+ * 获取接口返回的内容
95
+ * @param key
96
+ * @param dataForm
97
+ * @param content
98
+ */
99
+ public getDataForm(key: string, dataForm: string, content: string): string | null;
100
+ }
101
+
102
+ export { };
@@ -0,0 +1,223 @@
1
+
2
+ /**
3
+ * 控件对象
4
+ */
5
+ declare global {
6
+ interface UiObject {
7
+ /**
8
+ * 点击控件
9
+ */
10
+ public click(): boolean;
11
+
12
+ /**
13
+ * 长按控件
14
+ */
15
+ public longClick(): boolean;
16
+
17
+ /**
18
+ * 向前滚动控件(手指向下或者向右移动)
19
+ */
20
+ public scrollForward(): boolean;
21
+
22
+ /**
23
+ * 向后滚动控件(手指往上或者往左移动)
24
+ */
25
+ public scrollBackward(): boolean;
26
+
27
+ /**
28
+ * 选中文本
29
+ * @param start 起始位置
30
+ * @param end 结束位置
31
+ */
32
+ public setSelection(start: number, end: number): boolean;
33
+
34
+ /**
35
+ * 复制控制内容,结合setSelection使用
36
+ */
37
+ public copy(): boolean;
38
+
39
+ /**
40
+ * 剪切控件内容,结合setSelection使用
41
+ */
42
+ public cut(): boolean;
43
+
44
+ /**
45
+ * 让控件获取焦点
46
+ */
47
+ public focus(): boolean;
48
+
49
+ /**
50
+ * 给文本框输入内容
51
+ * @param text 文本内容
52
+ */
53
+ public setText(text: string): boolean;
54
+ /**
55
+ * 在当前控件或者所有子控件中查找某些控件
56
+ * 如果使用了children() 方法,则只搜索子控件
57
+ * @param obj 搜索条件
58
+ */
59
+ public find(obj: UiSelector): UiObject[];
60
+
61
+ /**
62
+ * 在当前控件或者所有子控件中查找某个控件
63
+ * 如果使用了children() 方法,则只搜索子控件
64
+ * @param obj 搜索条件
65
+ */
66
+ public findOne(obj: UiSelector): UiObject;
67
+
68
+ /**
69
+ * 获取控件的位置
70
+ */
71
+ public bounds(): Rect;
72
+
73
+ /**
74
+ * 获取控件的文本内容
75
+ */
76
+ public text(): string;
77
+
78
+ /**
79
+ * 获取控件的描述内容
80
+ */
81
+ public desc(): string;
82
+
83
+ /**
84
+ * 获取控件的id
85
+ */
86
+ public id(): string;
87
+
88
+ /**
89
+ * 获取当前控件的子控件
90
+ */
91
+ public children(): this;
92
+
93
+ /**
94
+ * 获取当前控件的子控件数量,必须在children() 方法之后调用
95
+ */
96
+ public length(): number;
97
+
98
+ /**
99
+ * 获取控件的绘制顺序
100
+ */
101
+ public getDrawingOrder(): number;
102
+
103
+ /**
104
+ * 判断控件是否被选中
105
+ */
106
+ public isSelected(): boolean;
107
+
108
+ /**
109
+ * 判断控件是否可以长按
110
+ */
111
+ public isLongClickable(): boolean;
112
+
113
+ /**
114
+ * 判断控件是否可以点击
115
+ */
116
+ public isClickable(): boolean;
117
+
118
+ /**
119
+ * 判断控件是否可以编辑
120
+ */
121
+ public isEditable(): boolean;
122
+
123
+ // public isFocusable(): boolean;
124
+
125
+ /**
126
+ * 判断控件是否可用
127
+ */
128
+ public isEnabled(): boolean;
129
+
130
+ /**
131
+ * 判断控件是否是密码控件
132
+ */
133
+ public isPassword(): boolean;
134
+
135
+ /**
136
+ * 判断控件是否可以滚动
137
+ */
138
+ public isScrollable(): boolean;
139
+
140
+ /**
141
+ * 判断控件是否对用户可见
142
+ */
143
+ public isVisibleToUser(): boolean;
144
+
145
+ /**
146
+ * 判断控件是否被选中
147
+ */
148
+ public isChecked(): boolean;
149
+
150
+ /**
151
+ * 判断控件是否可以选中
152
+ */
153
+ public isCheckable(): boolean;
154
+
155
+ /**
156
+ * 设置控件是否可以点击
157
+ * @param clickable 是否可以点击
158
+ */
159
+ public setClickable(clickable: boolean): boolean;
160
+
161
+ /**
162
+ * 设置控件是否可以被长按
163
+ * @param longClickable 是否可以长按
164
+ */
165
+ public setLongClickable(longClickable: boolean): boolean;
166
+
167
+ /**
168
+ * 设置控件是否可以编辑
169
+ * @param editable 是否可以编辑
170
+ */
171
+ public setEditable(editable: boolean): boolean;
172
+
173
+ /**
174
+ * 设置控件是否可用
175
+ * @param enabled 是否可用
176
+ */
177
+ public setEnabled(enabled: boolean): boolean;
178
+
179
+ //public setCheckable(checkable: boolean): boolean
180
+
181
+ /**
182
+ * 设置控件是否选中
183
+ * @param checked 是否选中
184
+ */
185
+ public setChecked(checked: boolean): boolean
186
+
187
+ /**
188
+ * 设置控件是否获得焦点
189
+ * @param focusable 是否可获得焦点
190
+ */
191
+ public setFocusable(focusable: boolean): boolean
192
+
193
+ /**
194
+ * 设置是否用户可见
195
+ * @param visibleToUser 是否对用户可见
196
+ */
197
+ public setVisibleToUser(visibleToUser: boolean): boolean
198
+
199
+ /**
200
+ * 设置是否获得焦点
201
+ * @param focused 是否获得焦点
202
+ */
203
+ public setFocused(focused: boolean): boolean
204
+
205
+ //public setScrollable(scrollable: boolean): boolean
206
+
207
+ /**
208
+ * 设置是否选中
209
+ * @param selected 是否选中
210
+ */
211
+ public setSelected(selected: boolean): boolean
212
+
213
+ /**
214
+ *
215
+ * 设置是否是密码控件
216
+ * @param password 是否是密码控件
217
+ */
218
+ public setPassword(password: boolean): boolean
219
+
220
+ //public setContentDescription(contentDescription: string): boolean
221
+ }
222
+ }
223
+ export { };
package/README.md ADDED
@@ -0,0 +1,35 @@
1
+ ## DeekeScript应用代码
2
+
3
+ **DeekeScript/deekeScript** 是采用DeekeScript框架开发✨模拟点击(代替人工操控基于Android的移动设备)✨类产品的模版。在环境安装好之后,拉取本仓库到本地,即可开启美妙的旅途~~
4
+
5
+ **最终能开发出什么样的应用❓请移步查阅:
6
+ [https://github.com/DeekeScript/ad-deeke](https://github.com/DeekeScript/ad-deeke)**
7
+
8
+
9
+ ## 使用步骤
10
+
11
+ ### 1. 安装node.js
12
+ > https://nodejs.org/zh-cn/download/
13
+
14
+ ### 2.安装git
15
+ > https://git-scm.com/downloads
16
+
17
+ ### 3. 安装vscode
18
+ > https://code.visualstudio.com/download
19
+
20
+ ### 4.使用git拉取本仓库代码到本地
21
+ > git clone https://github.com/DeekeScript/deekeScript.git ./
22
+
23
+ ### 5.安装依赖
24
+ > npm install
25
+
26
+ ### 6.编写代码
27
+ > 请在src下创建代码文件
28
+
29
+ ### 7.安装DeekeScript插件,并代码调试
30
+ > 请移步到<a target="_blank" href="https://doc.deeke.cn">https://doc.deeke.cn</a> 或者 <a target="_blank" href="https://deekescript.github.io/">https://deekescript.github.io/</a>
31
+
32
+ ## Tips 📢
33
+ > 文件夹@deekeScript请不要删除,此代码会提供代码提示能力~
34
+
35
+ > 项目的node_modules文件夹不见了?请打开.vscode/setting.json注释掉隐藏代码即可~