帮我制作一个脚本,在输入框设置账号(accounts.txt每行一个账号)文本id("tested_account").findOne()
生成一个500ms的toast显示:正在处理第***条/共***条
点击解除绑定按钮id("disconnect_binding").findOne().click()
获取点击解绑时软件生成的toast
每条账号对应的toast记录到:解绑记录.txt
packageName = com.wangding.cqwom
回答
// 文档地址 https://docs.hamibot.com/
以下是你需要的账号解绑自动化脚本:
// 确保无障碍服务开启
auto.waitFor();
var files = require('files');
// 读取账号文件
var accounts = [];
if (files.exists('accounts.txt')) {
var content = files.read('accounts.txt');
accounts = content.split('\n').filter(function(account) {
return account.trim() !== '';
});
} else {
toast('账号文件accounts.txt不存在!');
hamibot.exit();
}
var total = accounts.length;
if (total === 0) {
toast('没有找到任何账号!');
hamibot.exit();
}
// 确保在目标应用界面
if (!waitForPackage('com.wangding.cqwom', 3000)) {
toast('请先打开目标应用!');
hamibot.exit();
}
// 开启Toast监听
events.observeToast();
var toastResult = null;
var toastListener = events.on('toast', function(toast) {
// 只处理目标应用的toast
if (toast.getPackageName() === 'com.wangding.cqwom') {
toastResult = toast.getText();
}
});
// 处理每个账号
for (var i = 0; i < total; i++) {
var account = accounts[i].trim();
if (account === '') continue;
// 显示处理进度
toast('正在处理第' + (i+1) + '条/共' + total + '条');
sleep(500);
try {
// 设置输入框账号
var input = id('tested_account').findOne(2000);
if (input) {
input.setText(account);
} else {
toast('找不到输入框!');
continue;
}
// 点击解除绑定按钮
var button = id('disconnect_binding').findOne(2000);
if (button) {
button.click();
} else {
toast('找不到解绑按钮!');
continue;
}
// 等待toast出现
toastResult = null;
var startTime = new Date().getTime();
while (new Date().getTime() - startTime < 3000) {
if (toastResult !== null) {
break;
}
sleep(200);
}
// 记录结果
var result = account + ' : ' + (toastResult || '未获取到结果');
files.write('解绑记录.txt', result + '\n', {
mode: 'a'
});
} catch (e) {
log('处理账号 ' + account + ' 时出错: ' + e);
files.write('解绑记录.txt', account + ' : 处理出错\n', {
mode: 'a'
});
}
// 避免操作过快
sleep(1500);
}
// 清理监听器
toastListener.remove();
toast('所有账号处理完成!');
使用说明:
- 将脚本保存在Hamibot中
- 在脚本同目录下创建accounts.txt文件,每行一个账号
- 确保已经打开了packageName为com.wangding.cqwom的应用
- 运行脚本
脚本功能:
- 读取accounts.txt中的账号列表
- 逐个设置输入框账号并显示处理进度
- 点击解绑按钮后自动监听系统toast
- 将解绑结果记录到"解绑记录.txt"文件中
- 自动处理异常情况并继续执行
注意事项:
- 确保已开启无障碍服务
- 确保目标应用已打开并处于前台
- 脚本会等待3秒获取toast结果,如果应用toast响应慢可以适当增加等待时间
- 解绑记录会以追加模式写入,不会覆盖之前的结果
ℹ️ 本回答由 AI 生成,内容仅供参考