做过自动化脚本的都知道,现在很多传统的自动化脚本方案几乎都可以被检测,比如基于root,adb等方案。用外置的带有鼠标和键盘功能集的蓝牙HID硬件来直接点击和滑动是非常靠谱的方案,也是未来的趋势所在。
一、使用蓝牙HID硬件的优势
- 不会被检测到,因为现在的手机本身支持蓝牙鼠标,蓝牙键盘,蓝牙游戏柄等。我们实现的也是一种标准蓝牙外部设备。app总不能完全禁止使用手机蓝牙外设吧,所以是非常靠谱的。
- 成本低,我们选用国产esp32c3芯片,成本不足10块钱。
- 兼容性好,只要支持蓝牙的手机都可以,不挑手机。
- 支持冰狐智能辅助,可以直接在冰狐上使用js编写脚本逻辑,做到完全随心所欲。
二、代码实战
冰狐智能辅助官方支持使用蓝牙HID硬件,非常方便。我们可以使用冰狐官方提供的BleClient来和蓝牙HID硬件通信,将各种指令发送给蓝牙硬件,让蓝牙硬件执行点击,滑动等操作。
function main() {
var ble = new BleClient('sssss-xxxx-344-xxx-fffff', 'ffff-xxx-xxx-xxxx-ffff');
if (1 == ble.connect()) {
// 点击
bleClick(ble, 400, 400);
// sleep(3000);
// // 滑动
// bleSwipe(ble, rsScreenWidth / 2, rsScreenHeight / 3 * 2, rsScreenWidth / 2, rsScreenHeight / 3, 1000)
}
}
// 点击
function bleClick(ble, x, y) {
x = parseInt(x * 10000 / rsScreenWidth);
y = parseInt(y * 10000 / rsScreenHeight);
var cmd = `c${x},${y}`;
console.log('cmd:' + cmd)
var ret = ble.send(cmd)
console.log('send ret:', ret)
}
// 滑动
function bleSwipe(ble, x1, y1, x2, y2, duration) {
x1 = parseInt(x1 * 10000 / rsScreenWidth);
y1 = parseInt(y1 * 10000 / rsScreenHeight);
x2 = parseInt(x2 * 10000 / rsScreenWidth);
y2 = parseInt(y2 * 10000 / rsScreenHeight);
var cmd = `m${x1},${y1},${x2},${y2},${duration}`;
console.log('cmd:' + cmd)
var ret = ble.send(cmd)
console.log('send ret:', ret)
}
// 输出文本
function bleOutput(ble) {
var ret = ble.send('z:ab12')
console.log('send ret:', ret)
}
// 全选
function bleSelectAll(ble) {
var ret = ble.send('s')
console.log('send ret:', ret)
}
// 拷贝
function bleCopy(ble) {
var ret = ble.send('o')
console.log('send ret:', ret)
}
// 剪切
function bleCut(ble) {
var ret = ble.send('t')
console.log('send ret:', ret)
}
// 粘贴
function blePaste(ble) {
var ret = ble.send('p')
console.log('send ret:', ret)
}
// 最近应用
function bleRecentApps(ble) {
var ret = ble.send('r')
console.log('send ret:', ret)
}
// 亮屏
function bleWakeup(ble) {
var ret = ble.send('w')
console.log('send ret:', ret)
}
// 锁屏
function bleLock(ble) {
var ret = ble.send('l')
console.log('send ret:', ret)
}
// 按home键
function bleHome(ble) {
var ret = ble.send('h')
console.log('send ret:', ret)
}
// 按返回键
function bleBack(ble) {
var ret = ble.send('b')
console.log('send ret:', ret)
}
三、总结
综上所述,蓝牙HID硬件在实现自动化脚本方面具有独特的优势和应用前景。通过合理地编写脚本和配置硬件,可以高效地实现各种自动化任务。具有很强的防检测、防风控能力,具有超强的性价比。