[微信][支付宝]扫码支付 NO ROOT

手机有指纹功能却无法指纹支付所以写了这个

没学过js 看了些例子就写了 有问题的地方请指出

脚本结构

  • 扫码支付.js
    • WeixinUtils.js
    • AlipayUtils.js
    • LogUI.js
      • DrawableUtils.js
      • AnimationUtils.js

0_1541001412521_Screenshot_20181031-221807.png
微信的支付界面获取不到按钮所以只能click(x,y)

0_1541001447900_Screenshot_20181031-221813.png
图片太大就传这两张了

第一次发脚本 将就看吧
扫码支付.js

  • initUI()
  • alipay()
  • weixin()
  • quit()

功能:询问框选择微信调用weixin()
选择支付宝调用alipay()
这两个方法会用分别调用WeixinUtils AlipayUtils 实现支付

WeixinUtils.js

  • back1()/微信退回首页的方法/
  • payWexin()
  • inputPaw(nums)
  • clickKey(num, startX, startY, keyWidth, keyHeight)

扫码支付.js 中weixin()调用payWeixin()
主要步骤
waitForActivity("com.tencent.mm.ui.LauncherUI");
logAndPrint("进入微信主页");

desc("更多功能按钮").findOne().click();


logAndPrint("点击扫一扫");

while (!click("扫一扫"));


waitForActivity("com.tencent.mm.plugin.scanner.ui.BaseScanUI");

logAndPrint("开始扫码")

//扫码

//等待页面加载
sleep(500);

//输入金额

//判断是否确认付款
waitForActivity("com.tencent.mm.plugin.wallet.pay.ui.WalletPayUI");

//确认支付
logAndPrint("准备输入密码");

//等待进入密码框
text("请输入支付密码").waitFor();

//密码框从下方弹出需要时间
sleep(500);

//输入密码
logAndPrint("正在输入密码");

//密码
let nums  = [0, 0, 0, 0, 0, 0];

inputPaw(nums)

if (text("支付密码错误,请重试").exists()) {
    logAndPrint("支付失败");
}

}

AlipayUtils.js
比微信简单一些 输入密码一直click("num")

LogUI.js

  • logAndPrint(text)
  • setTitle(text)
  • setHint(text)
  • close()

控制台不顺手 拖动不方便 而且一般脚本只要输出不用其它操作,写了个简单的能看的就行了。

其它工具

注意

  • 使用前改密码 分别在WeixinUtils.js 的payWeixin() 和AlipayUtils.js 的payAlipay()方法中可以搜索“let nums = ”

  • 因屏幕分辨率不同 UI显示会不一致

好吧,其实我估计没什么人会用这东西

转载请注明文章来源
5_1541000620235_扫码支付.js 4_1541000620234_WeixinUtils.js 3_1541000620234_LogUI.js 2_1541000620233_DrawableUtils.js 1_1541000620232_AnimationUtils.js 0_1541000620230_AlipayUtils.js

写给小白:五个js文件放一起,运行扫码支付.js就可以看到效果。可把其它几个js单独放到一个文件夹,再到扫码支付.js中修改这几个文件的获取路径,路径就在最开始的几行。

  • 2
    帖子
  • 3013
    浏览

与 Auto.js 的连接断开,我们正在尝试重连,请耐心等待