//=====================================Auto.js功能封装开始=====================================\\
//封装中的log是用于查看是否找到控件,如果不需要则自行删除;
//在点击功能上增加了点击后等待1秒,不需要的可自行删除;
//使用方法:函数名(参数); 参数是字符串类型;id点击是填入id,文本点击是传入需要点击的文本
//例如:
//文本点击
// textClick('登录');
//id点击
// idClick('login')
/*
屏幕全适配用法
//定义当前手机的屏幕大小,换设备不需要更改;
let defaultX = 1080
let defaultY = 1920
adaptationClick(15,75)//传入x,y坐标
*/
//启动APP
function startApp(appPackageName) {
while (true) {
if (currentPackage() != appPackageName) {
app.launch(appPackageName);
sleep(5000);
} else {
break;
}
}
}
//屏幕全适配点击
function adaptationClick(intX, intY) {
let x = intX / defaultX * device.width //换算后的x
let y = intY / defaultY * device.height //换算后的y
click(x, y);//当前做的是坐标点击,如果需要返回x,y的值自行修改即可
sleep(1000);
}
//屏幕全适配滑动
function adaptationSlide(intX1, intY1, intX2, intY2) {
let x1 = intX1 / defaultX * device.width //换算后的x
let y1 = intY1 / defaultY * device.height //换算后的y
let x2 = intX2 / defaultX * device.width //换算后的x
let y2 = intY2 / defaultY * device.height //换算后的y
swipe(x1, y1, x2, y2, 500);//横/竖 自行定义
sleep(1000);
}
//文本点击
function textClick(parameter) {
let resultObject = text(parameter).findOne(10);
if (resultObject == null) {
log("没找到-->" + parameter);
return false;
} else {
log("找到了-->" + parameter);
click(resultObject.bounds().centerX(), resultObject.bounds().centerY());
sleep(1000);
return true;
}
}
//指定坐标检测文本
function findTextByCoordinate(parameter, left, top, right, buttom) {
if (text(parameter).bounds(left, top, right, buttom).exists()) {
log("找到了-->" + parameter);
return true;
} else {
log("没找到-->" + parameter);
return false;
}
}
//检测文本是否存在
function findText(parameter) {
if (text(parameter).exists()) {
log("找到了-->" + parameter);
return true;
} else {
log("没找到-->" + parameter);
return false;
}
}
//包含文本点击
function textContainsClick(parameter) {
let resultObject = textContains(parameter).findOne(10);
if (resultObject == null) {
log("没找到-->" + parameter);
return false;
} else {
click(resultObject.bounds().centerX(), resultObject.bounds().centerY());
log("找到了-->" + parameter);
sleep(1000);
return true;
}
}
//检测是否包含文本
function findTextContains(parameter) {
if (textContains(parameter).exists()) {
log("找到了-->" + parameter);
return true;
} else {
log("没找到-->" + parameter);
return false;
}
}
//通过id获取内容
function getContentById(parameter) {
let resultObject = id(parameter).findOne(10);
if (resultObject == null) {
log("没找到-->" + parameter);
return ''
} else {
log("找到了-->" + parameter);
return resultObject.text();
}
}
//id点击
function idClick(parameter) {
let resultObject = id(parameter).findOne(10);
if (resultObject == null) {
log("没找到-->" + parameter);
return false
} else {
log("找到了-->" + parameter);
click(resultObject.bounds().centerX(), resultObject.bounds().centerY());
sleep(1000);
return true;
}
}
//包含id点击
function idContainsClick(parameter) {
let resultObject = idContains(parameter).findOne(10);
if (resultObject == null) {
log("没找到-->" + parameter);
return false;
} else {
log("找到了-->" + parameter);
if (resultObject.bounds().centerX() > 0 && resultObject.bounds().centerY() > 0) {
click(resultObject.bounds().centerX(), resultObject.bounds().centerY());
}
sleep(1000);
return true;
}
}
//检查id是否存在
function findId(parameter) {
if (id(parameter).exists()) {
log("找到了-->" + parameter);
return true;
} else {
log("没找到-->" + parameter);
return false;
}
}
//检查是否包含id
function findIdContains(parameter) {
if (idContains(parameter).exists()) {
log("找到了-->" + parameter);
return true;
} else {
log("没找到-->" + parameter);
return false;
}
}
//指定坐标检测id
function findIdByCoordinate(parameter, left, top, right, buttom) {
if (id(parameter).bounds(left, top, right, buttom).exists()) {
log("找到了-->" + parameter);
return true;
} else {
log("没找到-->" + parameter);
return false;
}
}
//描述点击
function descClick(parameter) {
let describeClick = desc(parameter).findOne(10);
if (describeClick == null) {
log("没找到-->" + parameter);
return false
} else {
log("找到了-->" + parameter);
click(describeClick.bounds().centerX(), describeClick.bounds().centerY());
sleep(1000);
return true;
}
}
//检查描述是否存在
function findDesc(parameter) {
if (desc(parameter).exists()) {
log("找到了-->" + parameter);
return true;
} else {
log("没找到-->" + parameter);
return false;
}
}
//是否选中
function isChecked(parameter) {
let isCheckedState = text(parameter).findOne(10);
if (isCheckedState == null) {
log("没找到-->" + parameter);
return false;
} else {
log("找到了-->" + parameter);
return isCheckedState.checked();
}
}
//是否选择
function isSelected(parameter) {
let isSelectedState = text(parameter).findOne(10);
if (isSelectedState == null) {
log("没找到-->" + parameter);
return false;
} else {
log("找到了-->" + parameter);
return isSelectedState.selected();
}
}
//=====================================Auto.js功能封装结束=====================================\\