Bootstrap

淘宝预约茅台

// 打开App
function open_app(appName){
    var name = getPackageName(appName);
    if(name){
        toastLog("打开"+appName+"...");
        launch(name);
    }
    else{
        toastLog("App名称错误");
    }
    return name;
}

// 等待TextView存在并延时点击
function wait_textview_exists_click(textViewName, delayTime, showMsg){
    let startTime = new Date().getTime();
    while(true){
        if(new Date().getTime() - startTime > 30000){
            toastLog("Timeout: 30s");
            break;
        }
        
        if(className("android.widget.TextView").text(textViewName).exists()){
            sleep(delayTime);
            toastLog("点击" + showMsg);
            let b = className("android.widget.TextView").text(textViewName).findOnce().bounds();
            click(b.centerX(),b.centerY());
            break;
        }
        sleep(1000);
    }
}

// 等待View存在并延时点击
function wait_image_exists_click(imageIndex, delayTime, showMsg){
    while(true){
        if (className("android.widget.ImageView").exists()){
            sleep(delayTime);
            toastLog("点击" + showMsg);
            let views = className("android.widget.ImageView").find();
            if(imageIndex < 0){
                imageIndex = views.length + imageIndex;
            }

            let b = views[imageIndex].bounds();
            click(b.centerX(),b.centerY());
            break;
        }   
    }
}

// 等待View存在并延时点击
function wait_desc_exists_click(descName, delayTime, showMsg){
    let startTime = new Date().getTime();
    while(true){
        if(new Date().getTime() - startTime > 30000){
            toastLog("Timeout: 30s");
            break;
        }
        
        if(className("android.view.View").desc(descName).exists()){
            sleep(delayTime);
            toastLog("点击" + showMsg);
            let b = className("android.view.View").desc(descName).findOnce().bounds();
            click(b.centerX(),b.centerY());
            break;
        }
        sleep(1000);
    }
}

// 判断TextView是否存在
function check_textview_exists(textViewName, delayTime){
    sleep(delayTime);
    if(className("android.widget.TextView").text(textViewName).exists()){
        return true;
    }
    else{
        return false;
    }
}

// 淘宝预约茅台
function tm_mt_yy(){
    var name = open_app("淘宝");
    waitForPackage(name);
    wait_image_exists_click(-1, 3000, "\"我的淘宝\"");
    wait_image_exists_click(-1, 3000, "\"我的淘宝\"");
    wait_textview_exists_click("收藏", 3000, "\"收藏\"");
    wait_desc_exists_click("1499", 3000, "\"飞天茅台\"");
    wait_textview_exists_click("点击预约", 3000, "\"点击预约\"");

    if(check_textview_exists("预约成功", 3000)){
        toastLog("预约成功");
    }else{
        toastLog("预约失败");
    }
}
 

tm_mt_yy();

悦读

道可道,非常道;名可名,非常名。 无名,天地之始,有名,万物之母。 故常无欲,以观其妙,常有欲,以观其徼。 此两者,同出而异名,同谓之玄,玄之又玄,众妙之门。

;