dlufjfiqnurr 发表于 2024-5-12 02:06

Autojs6-铁路12306,e卡通北京地铁二维码

本脚本只针对北京地铁。请确保无障碍权限开启了。

如果有出入,请自行修改。

## 1. 工具类

mokuai.js

```javascript

//根据app名称打开指定程序
function launchApp(appName){
    app.launchApp(appName);
}

// 点击文本
function textClick(str,isParent){
    var b = text(str).findOne().bounds();
    if(isParent){
      b=text(str).findOne().parent().bounds();
    }
    click(b.centerX(), b.centerY());
}

module.exports.tools={
        launchApp,
    textClick
}
```

## 2. e卡通北京地铁

**自动打开e卡北京地铁二维码**

```javascript
let { tools } = require("./mokuai.js");
/**
* ctrl + shift+ p
* 建立设备连接 -> autojs6(服务端) < vscode(客户端)
*/
tools.launchApp("铁路12306");

// 超时关闭
var thread = threads.start(function(){
    sleep(1*60*1000);
    /**
   * 退出有两种条件:1.执行完成 2.超时
   */
   log("超时关闭")
   exit();
});

//开屏
let open=threads.start(()=>{
    let i=0;
    while(i<60){
      // 版本更新
      if(text("稍后再说").exists()){
            //text("稍后再说").findOne().click();
            tools.textClick("稍后再说")
      }
      // 开屏广告跳过
      if(id('com.MobileTicket:id/tv_skip').exists()){
            id('com.MobileTicket:id/tv_skip').findOne().click();
      }

      // 铁路e卡通
      if(text("铁路e卡通").exists()){
            // text("铁路e卡通").findOne().parent().click();
            tools.textClick("铁路e卡通",true)
      }

      // 二维码不存在
      if(!className("android.view.View").text("北京轨道交通乘车码").exists()){
            
            // 尝试点击操作北京地铁
            if(text("北京地铁").exists()){
                //className("android.widget.Button").text("北京地铁").findOne().click();
                tools.textClick("北京地铁")
            }
      }else{
            log("显示二维码")
            exit();
      }

      i++;
      sleep(1000);
    }
});
```

以上注释代码建议不要使用,虽然作用一样,但是稳定性很不好,以上代码都是自己经过多次使用。

可以添加快捷方式到桌面,更方便使用。

!(https://s21.ax1x.com/2024/05/12/pkea7Ke.png)

写脚本是一件费时费力的事,真心累啊!!!光我写脚本的所花时间远比我一辈子正常点e卡通二维码时间多得多。

dlufjfiqnurr 发表于 2024-5-12 20:00

bluepeb 发表于 2024-5-12 10:48
支持,我也在学习autojs,总是出现想象不到的各自意外,太郁闷了!

发出来让大家见笑了,我手机要有nfc我就不用着了,直接使北京一卡通nfc卡就能坐地铁。我现在基本很少写了,太费时间,还是好好学点有用的。

知心 发表于 2024-5-12 12:17

Scan 发表于 2024-5-12 11:36
目前最新的是Autojs6吗,在哪里下载

市面流传最多的版本是4.1.1,官方现在自纠自查,没提供下载服务。要么就是autojsx 这个好像是6.几版本

bluepeb 发表于 2024-5-12 10:48

支持,我也在学习autojs,总是出现想象不到的各自意外,太郁闷了!

ZhjhJZ 发表于 2024-5-12 11:14

楼主辛苦,感谢分享{:1_919:}

Scan 发表于 2024-5-12 11:36

目前最新的是Autojs6吗,在哪里下载

lawse 发表于 2024-5-12 13:16

高手。厉害啊,

abc1234567890 发表于 2024-5-12 14:14

这个是干啥用的?

怀中猫 发表于 2024-5-12 14:56

最后一句话太真实了

qq20048888 发表于 2024-5-12 17:21

这代码.....
页: [1] 2
查看完整版本: Autojs6-铁路12306,e卡通北京地铁二维码