使用AutoJS完成某银行APP话费抽奖功能

launch(“com.nxy.gs”)
var flag = true
while(flag){
waitForActivity(“com.yitong.mbank.gsrcu.android.activity.MainActivity”)
if(text(“转账汇款”).findOne().parent().click()){
toastLog(“转账汇款点击成功”)
sleep(3000)
if(text(“行内转账”).findOne().click()){
toastLog(“行内转账点击成功”)
sleep(3000)
if(id(“TRANS_AMT_F”).findOne(10000)){
id(“TRANS_AMT_F”).findOne().setText(“0.01”)
id(“book”).findOne().click()
sleep(3000)
className(“android.view.View”).text(“4”).findOne().click()
sleep(1000)
text(“6210 6160 0090 0055 885”).depth(14).findOne().click()
sleep(1000)
id(“next”).findOne().click()
sleep(2000)
if(id(“TRANS_PWD”).findOne().click()){
toastLog(“密码输入框点击成功”)
sleep(1000)
var jp = id(“TRANS_PWD”).findOne().bounds()
click(jp.centerX(),jp.centerY())
sleep(1000)
text(“6”).findOne().click()
text(“2”).findOne().click()
text(“1”).findOne().click()
text(“0”).findOne().click()
text(“2”).findOne().click()
text(“8”).findOne().click()
id(“submit”).findOne().click()
sleep(2000)
id(“getAword”).findOne().click()
sleep(1000)
className(“android.widget.Image”).text(“point”).findOne().click()
sleep(1000)
if(id(“goback”).findOne(15000)){
id(“goback”).findOne().click()
log(“抽奖失败,继续…”)
sleep(1000)
}else{
log(“抽奖成功”)
flag = false
sleep(1000)
}
}else{
toastLog(“密码输入框点击失败”)
}
sleep(1000)
}
else{
log(“尚未登录,需要登录”)
var jp = id(“etLoginAccount”).findOne().bounds()
click(jp.centerX(),jp.centerY())
text(“1”).findOne().click()
text(“3”).findOne().click()
text(“9”).findOne().click()
text(“1”).findOne().click()
text(“9”).findOne().click()
text(“8”).findOne().click()
text(“9”).findOne().click()
text(“8”).findOne().click()
text(“8”).findOne().click()
text(“8”).findOne().click()
text(“5”).findOne().click()
id(“btnBoardCancel”).findOne().click()
sleep(1000)
if(id(“etLoginPasswd”).findOne(2000)){
toastLog(“密码输入框点击成功”)
//sleep(5000)
var jp = id(“etLoginPasswd”).findOne().bounds()
click(jp.centerX(),jp.centerY())
//text(“ABC”).findOne().click()
sleep(2000)
//className(“android.widget.LinearLayout”).depth(7).findOne().click()
var jp = id(“key_board_abc_m”).findOne().bounds()
click(jp.centerX(),jp.centerY())
//id(“key_board_abc_m”).findOne().click()
//text(“m”).findOne().click()
//id(“key_board_abc_a”).findOne().click()
//text(“a”).findOne().click()
var jp = id(“key_board_abc_a”).findOne().bounds()
click(jp.centerX(),jp.centerY())
text(“123”).findOne().click()
sleep(1000)
text(“X”).findOne().click()
text(“X”).findOne().click()
text(“X”).findOne().click()
text(“X”).findOne().click()
text(“X”).findOne().click()
text(“X”).findOne().click()
id(“btnBoardCancel”).findOne().click()
sleep(1000)
id(“btnLogin”).findOne().click()
sleep(3000)
if(id(“TRANS_AMT_F”).findOne(2000)){
id(“TRANS_AMT_F”).findOne().setText(“0.01”)
id(“book”).findOne().click()
sleep(3000)
className(“android.view.View”).text(“4”).findOne().click()
sleep(1000)
text(“6210610000000000000”).depth(14).findOne().click()
sleep(1000)
id(“next”).findOne().click()
sleep(2000)
if(id(“TRANS_PWD”).findOne().click()){
toastLog(“密码输入框点击成功”)
sleep(1000)
var jp = id(“TRANS_PWD”).findOne().bounds()
click(jp.centerX(),jp.centerY())
sleep(1000)
text(“6”).findOne().click()
text(“2”).findOne().click()
text(“1”).findOne().click()
text(“0”).findOne().click()
text(“2”).findOne().click()
text(“8”).findOne().click()
id(“submit”).findOne().click()
sleep(2000)
id(“getAword”).findOne().click()
sleep(1000)
className(“android.widget.Image”).text(“point”).findOne().click()
sleep(2000)
if(id(“goback”).findOne(15000).click()){
log(“抽奖失败,继续…”)
sleep(1000)
}else{
log(“抽奖成功”)
flag = false
sleep(1000)
}
}else{
toastLog(“密码输入框点击失败”)
}
sleep(1000)
}
}else{
toastLog(“密码输入框点击失败”)
}
}

    //id("submit").findOne().click()


}else{
    log("行内转账点击失败")
}

}else{
log(“转账汇款点击失败”)
}

}
exit()

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
### 回答1: 可以使用 auto.js 的 `app.restart()` 函数来重启 app。 例如: ``` app.restart(); ``` 这将会关闭当前 app,然后重新打开它。 请注意,这只适用于 Android 设备。 对于 iOS 设备,您可以尝试使用 `app.close()` 函数来关闭 app,然后再手动重新打开它。 ### 回答2: 在Auto.js中,要实现重启一个应用,可以使用`app.launchPackage(packageName)`方法来重新启动应用程序。首先,我们需要获取目标应用的包名,可以通过Auto.js底部控制台的`shell("dumpsys activity top|grep ACTIVITY",true)`命令来获取当前活动的应用包名。 下面是一个示例代码: ```javascript // 获取当前应用包名 var currentPackage = packageName(shell("dumpsys activity top|grep ACTIVITY", true), /[^/]*}$/); // 重启应用 app.launchPackage(currentPackage); // 获取包名函数 function packageName(str, pattern) { var matchResult = str.match(pattern); if (matchResult) { return matchResult[0]; } else { return ""; } } ``` 这段代码会获取当前应用的包名,并使用`app.launchPackage()`方法重新启动该应用。`packageName()`函数用来提取包名,利用正则表达式将应用包名从字符串中提取出来。 注意:在使用`app.launchPackage()`方法的时候,可能会遇到无法重启的情况,这可能是由于目标应用的限制或Auto.js的权限问题导致的。 ### 回答3: 在AutoJs中,要实现重启应用,可以使用shell命令来实现。 首先,通过`shell()`函数执行`am force-stop packageName`来停止目标应用。具体的`packageName`可以通过查看应用的包名获取,方法是在手机上打开该应用时,运行脚本`log(packageName)`即可在控制台输出包名。 然后,通过`shell()`函数执行`monkey -p packageName -c android.intent.category.LAUNCHER 1`来重新启动目标应用。其中,`packageName`是目标应用的包名。 综上,以下是实现重启应用的代码示例: ```javascript var packageName = "com.example.app"; // 目标应用的包名 // 停止目标应用 shell("am force-stop " + packageName, true); // 重新启动目标应用 shell("monkey -p " + packageName + " -c android.intent.category.LAUNCHER 1", true); ``` 这样就可以通过AutoJs实现重启应用了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值