Auto.js 控件操作封装

//=====================================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功能封装结束=====================================\\

 

赞 (0)