1.前言
这部分内容一部分函数是基于无障碍服务,另一部分函数是基于root环境的。root函数一般用于模拟器和虚拟机中,无障碍函数一般用于新游戏或者新系统中。我们开发游戏脚本一般也会选用支持root的环境,能够更加方便。但是,有些新游戏不允许在root环境中启动,这种情况下更推荐通过无障碍的方式完成相关功能。如果用过直板机,对于这部分内容更好理解,可以理解为通过命令去调用这些按键。如果无障碍函数和root函数都能完成的功能,我更推荐使用无障碍函数,因为无障碍函数兼容性更好并且执行速度更快。
2.无障碍函数
1.back与home
back函数相当于返回按键,用于返回,返回是否执行成功。
home函数相当于home按键,用于返回手机主页面,返回是否执行成功。
scss
// 返回
let hasExecute = back();
console.log("返回是否执行成功:" + hasExecute);
sleep(1000);
// 返回主页面
hasExecute = home();
console.log("返回是否执行成功:" + hasExecute);

2.powerDialog
弹出电源键菜单,返回是否执行成功。
ini
let hasExecute = powerDialog();
console.log("操作是否执行成功:" + hasExecute);


3.notifications与quickSettings
notifications函数用于拉出通知栏,返回是否执行成功。
quickSettings函数用于显示快速设置(下拉通知栏到底),返回是否执行成功。
scss
// 通知栏
let hasExecute = notifications();
console.log("通知栏是否执行成功:" + hasExecute);
sleep(2000);
// 返回
back();
sleep(1000);
// 快速设置
hasExecute = quickSettings();
console.log("快速设置是否执行成功:" + hasExecute);



4.recents与splitScreen
recents函数用于显示最近任务,返回是否执行成功。
splitScreen函数用于分屏,返回是否执行成功。
scss
// 最近任务
let hasExecute = recents();
console.log("最近任务是否执行成功:" + hasExecute);
sleep(2000);
// 返回
back();
sleep(1000);
// 分屏
hasExecute = splitScreen();
console.log("分屏是否执行成功:" + hasExecute);



3.root函数
1.Home与Back
back函数相当于返回按键,用于返回。
home函数相当于home按键,用于返回手机主页面。
scss
// 返回
Back();
sleep(1000);
// 返回主页面
Home();
2.Power与Menu
Power函数相当于电源键,用于弹出电源界面。这个函数使用时需要注意,模拟器中调用会黑屏。
Menu函数相当于菜单键,用于弹出菜单界面。这个函数在模拟器使用时,没有反应。
scss
// 弹出电源界面
Power();
sleep(1000);
// 返回
Back();
sleep(1000);
// 弹出菜单界面
Menu();
3.VolumeUp与VolumeDown
VolumeUp函数相当于加音量键,用于增加音量。
VolumeDown函数相当于减音量键,用于降低音量。
scss
// 加音量
VolumeUp();
sleep(1000)
// 减音量
VolumeDown();
4.Camera
相当于相机键,用于启动相机。由于我的环境是模拟器,使用这个函数没有反应。
5.Up、Down、Left与Right
Up、Down、Left和Right函数分别相当于上、下、左和右键,用于控制方向。但是随着直板机(按键手机)的淘汰,游戏移动都是通过触摸完成,很多游戏都没有兼容按键操作。在游戏中调用这四个函数,大多数情况下是没有反应的。但是,一些非常老的游戏会兼容按键操作,这四个函数又非常好用。
如果是在模拟器环境,按键盘的上下左右键和这四个函数功能类似,如果键盘方向键能够控制方向,一般情况下,这四个函数也能有效。
scss
Up();
sleep(1000);
Down();
sleep(1000);
Left();
sleep(1000);
Right();
6.OK
相当于确定键,用于确定操作。由于直板机(按键手机)的淘汰,现在很多对话框根本没有兼容按键操作。很多时候对话框上有确定按钮,但是调用这个函数是无效的。
7.Text
在输入框输入内容,需要传递内容一个参数,参数类型为字符串。这个函数和OK函数境地差不多,能不能用还得看输入框的兼容性。
8.KeyCode
通过键值来调用功能,需要传递键值一个参数,参数类型为字符串,具体键值对应的按键功能可以参考官方文档的KeyCode对照表。上面介绍的功能,类似于将常用键值和按键功能对应关系进行了二次封装。以返回主页面为例,下面两种调用方式类似。
scss
Home();
// 相当于
KeyCode("3");
4.总结
特别注意,只有通过个人主页博客或者个人介绍中方式,才能获取源码