在写订阅功能的时候,发现back一会好用一会不好用,非常的烦人。因为这个订阅的页面如果返回的话,那么重新打开会从头开始,如果我们判断是否有添加功能重新点开的话,会导致无线循环。

for(let tubscrtibe=0;tubscrtibe<2;){
        if(className("android.view.View").depth(16).exists()){
            className("android.view.View").depth(16).click();
        }
        else {
            back();
        }
        goSleep(3);
        if(className("android.widget.ImageView").desc("订阅").exists()){
            goSleep(2);
            click("订阅");
            log("订阅成功");
            goSleep(2);
            back();
            goSleep(2);
            tubscrtibe +=1;
        }
        goSleep(2)
        if(className("android.widget.Button").exists()){
            console.log("在订阅页");
        }
        else {
            console.log("返回");
            var a = back();
        }
        goSleep(2)
        click("添加");
        goSleep(2);
        swipe(400,500,400,317,500);
        goSleep(2);
    }

所以我这里用的是控件判断,判断控件是否存在也就是第二行的。
控件判断
如果我们这个控件存在,那么就说明我们在订阅页,也就是不需要执行back功能了,而我们如果没有back回去,在订阅页的话,那么我们就要使用back功能,虽然这样的话,会空了一次滑动,但是问题不是很大,因为多滑动一次对订阅来说是毫无影响的,而我们如果不进行判断的话,那么就会导致功能进行到这里然后停止不动。

最后修改:2021 年 05 月 02 日 04 : 30 PM
如果觉得我的文章对你有用,请随意赞赏