关于脚本执行停留在:连接钉钉考勤机
Closed this issue · 16 comments
我使用qq发送通知后,auto.js能够获取通知并且执行脚本,但是在打开钉钉后就已经自动打卡,无需连接考勤机,所以会导致执行到打卡界面后程序就不再有任何动作了,我等待几分钟后无果,查看脚本日志发现也只执行到了连接考勤机那一步,后面一直是“nul”,请问这个该怎么做,虽然我通过发送打卡后等待两分钟后在发送暂停,在等待之后发送查询也能够获取到打卡信息,但是这脚本的后续仍然没有执行,也没有自动发送消息,请问这种情况我应该怎么做?
说明没有监听到打卡成功的通知,因为监听到有效通知后会中止打卡流程。你在日志里看一下,打卡成功后发出的通知是什么,修改监听的关键字
说明没有监听到打卡成功的通知,因为监听到有效通知后会中止打卡流程。你在日志里看一下,打卡成功后发出的通知是什么,修改监听的关键字
好的,谢谢,我尝试一下
QQ的聊天界面没有被唤醒,检查下输入的QQ号是不是对的,另外在应用设置中允许QQ后台弹窗
QQ的聊天界面没有被唤醒,检查下输入的QQ号是不是对的,另外在应用设置中允许QQ后台弹窗
并非QQ聊天界面没有唤醒,而是已经在QQ的聊天界面了,我检查了QQ的权限,我发送到打卡手机是有通知的,弹窗也允许了,今早是在QQ聊天界面停滞,不发送消息,查看日志是上面的:“百度输入法”,我发送给查询之类的消息都是能够发送的。
感谢大佬解答,我今天下班再测试一下,以及下周再测试一下,看看还会不会有这样的问题
看下聊天界面的输入框,有填充上文本吗?
/**
* @description 发送QQ消息
* @param {*} message 消息内容
*/
function sendQQMsg(message) {
console.log("发送QQ消息")
brightScreen() // 唤醒屏幕
unlockScreen() // 解锁屏幕
app.startActivity({
action: "android.intent.action.VIEW",
data:"mqq://im/chat?chat_type=wpa&version=1&src_type=web&uin=" + QQ,
packageName: "com.tencent.mobileqq",
});
waitForActivity("com.tencent.mobileqq.activity.SplashActivity")
console.info("已拉起聊天界面!")
// id("input").findOne().setText(message)
// id("fun_btn").findOne().click()
sleep(1000)
var input_field= id("input").findOne()
input_field.setText(message)
console.info("填充文本!")
sleep(1000)
var btn_send= id("fun_btn").findOne()
btn_send.click()
console.info("点击发送按钮!")
home()
sleep(1000)
lockScreen() // 关闭屏幕
}
替换这个方法,再调试看看,还是有问题的话,贴下安卓端卡住时的屏幕截图和日志截图
/** * @description 发送QQ消息 * @param {*} message 消息内容 */ function sendQQMsg(message) { console.log("发送QQ消息") brightScreen() // 唤醒屏幕 unlockScreen() // 解锁屏幕 app.startActivity({ action: "android.intent.action.VIEW", data:"mqq://im/chat?chat_type=wpa&version=1&src_type=web&uin=" + QQ, packageName: "com.tencent.mobileqq", }); waitForActivity("com.tencent.mobileqq.activity.SplashActivity") console.info("已拉起聊天界面!") // id("input").findOne().setText(message) // id("fun_btn").findOne().click() sleep(1000) var input_field= id("input").findOne() input_field.setText(message) console.info("填充文本!") sleep(1000) var btn_send= id("fun_btn").findOne() btn_send.click() console.info("点击发送按钮!") home() sleep(1000) lockScreen() // 关闭屏幕 }替换这个方法,再调试看看,还是有问题的话,贴下安卓端卡住时的屏幕截图和日志截图
好的。今天上午也是打卡之后无消息发送,卡在QQ发送消息界面且无文本填充,我先替换一下,中午左右在测试查询看看结果
waitForActivity("com.tencent.mobileqq.activity.SplashActivity")
这个地方阻塞了,把这行代码注释掉吧。
好的,我注释之后再测试吧,短时间查询是没有问题的,隔段时间在查询看看
反馈:经过昨天上午注释后,中间间隔超四小时以上查询无问题,下班自动执行发送消息正常,今早上班打卡正常,以上测试均是在手机屏幕常亮的情况下完成(其实是手机不知道怎么回事不锁屏了,之前为了先测试打卡就没管),接下来我将找出手机不锁屏的原因然后再做一下测试给予开发者反馈
补充,我去掉了锁屏,就是打开开发者模式将锁屏给关掉了,屏幕亮起就是主屏幕,无须滑动解锁,所以暂时不存在解锁失败而脚本停止执行的问题,且上午说的屏幕不息屏的问题也已经解决