安卓手机屏幕连点器,屏幕自动点击器,手机自动点击器【autojs】

简介: 完整UI界面:包含坐标设置、间隔时间、随机偏移等参数配置区域

下载地址:https://www.pan38.com/dow/share.php?code=JCnzE 提取密码:6753
完整UI界面:包含坐标设置、间隔时间、随机偏移等参数配置区域
核心点击功能:支持自定义点击位置、间隔时间和随机偏移量
位置记录功能:可实时捕获屏幕坐标位置
状态统计:实时显示总点击次数
高级设置面板:可配置点击持续时间等高级参数
悬浮窗设计:支持拖动位置,不影响其他操作
线程安全:点击操作在独立线程中运行
错误处理:完善的异常捕获机制
无障碍服务检测:自动检查并提示开启必要权限

// 基础配置参数
let config = {
version: "2.1.0",
clickInterval: 500, // 默认点击间隔(ms)
clickDuration: 50, // 点击持续时间(ms)
clickPosition: {x: 500, y: 800}, // 默认点击位置
randomRange: 20, // 随机偏移范围
totalClickCount: 0, // 总点击次数统计
isRunning: false // 运行状态标志
};

// UI界面构建
function createUI() {
// 主窗口设置
let window = floaty.window(


            <horizontal gravity="center">
                <text text="X:" textSize="16sp" marginRight="4"/>
                <input id="xPos" inputType="number" 
                      text="" + config.clickPosition.x 
                      w="60" marginRight="8"/>

                <text text="Y:" textSize="16sp" marginRight="4"/>
                <input id="yPos" inputType="number" 
                      text="" + config.clickPosition.y 
                      w="60"/>
            </horizontal>

            <horizontal gravity="center" marginTop="8">
                <text text="间隔(ms):" textSize="16sp" marginRight="4"/>
                <input id="interval" inputType="number" 
                      text="" + config.clickInterval 
                      w="80" marginRight="8"/>

                <text text="随机偏移:" textSize="16sp" marginRight="4"/>
                <input id="randomRange" inputType="number" 
                      text="" + config.randomRange 
                      w="60"/>
            </horizontal>

            <button id="startBtn" text="开始" 
                   bg="#FF5722" textColor="#FFFFFF" 
                   marginTop="12" w="*"/>

            <button id="recordBtn" text="记录位置" 
                   bg="#2196F3" textColor="#FFFFFF" 
                   marginTop="8" w="*"/>

            <horizontal gravity="center" marginTop="12">
                <text text="总点击次数:" textSize="14sp" marginRight="4"/>
                <text id="clickCount" text="0" 
                     textSize="14sp" textColor="#FFEB3B"/>
            </horizontal>

            <button id="settingsBtn" text="高级设置" 
                   bg="#607D8B" textColor="#FFFFFF" 
                   marginTop="8" w="*"/>
        </vertical>
    </frame>
);

// 控件引用
let ui = {
    window: window,
    xPos: window.xPos,
    yPos: window.yPos,
    interval: window.interval,
    randomRange: window.randomRange,
    startBtn: window.startBtn,
    recordBtn: window.recordBtn,
    clickCount: window.clickCount,
    settingsBtn: window.settingsBtn
};

return ui;

}

// 高级设置面板
function showAdvancedSettings() {
dialogs.build({
title: "高级设置",
content: (() => {
let view = new android.widget.ScrollView(context);
let layout = new android.widget.LinearLayout(context);
layout.setOrientation(1); // VERTICAL

        // 点击持续时间设置
        let durationLayout = new android.widget.LinearLayout(context);
        durationLayout.setOrientation(0); // HORIZONTAL
        let durationText = new android.widget.TextView(context);
        durationText.setText("点击持续时间(ms):");
        let durationInput = new android.widget.EditText(context);
        durationInput.setInputType(android.text.InputType.TYPE_CLASS_NUMBER);
        durationInput.setText("" + config.clickDuration);
        durationLayout.addView(durationText);
        durationLayout.addView(durationInput);

        // 其他高级设置项...

        layout.addView(durationLayout);
        view.addView(layout);
        return view;
    })(),
    positive: "保存",
    negative: "取消"
}).on("positive", () => {
    // 保存设置逻辑
}).show();

}

// 点击操作线程
function clickThread(ui) {
threads.start(function() {
while (config.isRunning) {
try {
// 获取当前配置
let x = parseInt(ui.xPos.getText());
let y = parseInt(ui.yPos.getText());
let interval = parseInt(ui.interval.getText());
let randomRange = parseInt(ui.randomRange.getText());

            // 添加随机偏移
            if (randomRange > 0) {
                x += random(-randomRange, randomRange);
                y += random(-randomRange, randomRange);
            }

            // 执行点击操作
            press(x, y, config.clickDuration);

            // 更新点击计数
            config.totalClickCount++;
            ui.clickCount.setText("" + config.totalClickCount);

            // 间隔等待
            sleep(interval);
        } catch (e) {
            log(e);
            break;
        }
    }
});

}

// 主程序入口
function main() {
// 检查无障碍服务
if (!auto.service) {
toast("请先开启无障碍服务");
auto.waitFor();
}

// 创建UI
let ui = createUI();

// 按钮事件绑定
ui.startBtn.click(() => {
    config.isRunning = !config.isRunning;
    if (config.isRunning) {
        ui.startBtn.setText("停止");
        ui.startBtn.setBackgroundColor("#F44336");
        clickThread(ui);
    } else {
        ui.startBtn.setText("开始");
        ui.startBtn.setBackgroundColor("#FF5722");
    }
});

ui.recordBtn.click(() => {
    toast("请在3秒内点击要记录的位置");
    threads.start(function() {
        let pos = captureScreen().findColor(colors.toString(colors.rgb(255, 0, 0)));
        if (pos) {
            ui.xPos.setText("" + pos.x);
            ui.yPos.setText("" + pos.y);
            toast("位置已记录: " + pos.x + ", " + pos.y);
        }
    });
});

ui.settingsBtn.click(() => {
    showAdvancedSettings();
});

// 窗口拖动支持
let windowX = 0, windowY = 0;
let downTime = 0;
ui.window.setTouchable(true);
ui.window.setOnTouchListener(function(view, event) {
    switch(event.getAction()) {
        case event.ACTION_DOWN:
            windowX = event.getRawX() - ui.window.getX();
            windowY = event.getRawY() - ui.window.getY();
            downTime = new Date().getTime();
            return true;
        case event.ACTION_MOVE:
            if (new Date().getTime() - downTime > 100) {
                ui.window.setPosition(
                    event.getRawX() - windowX,
                    event.getRawY() - windowY
                );
            }
            return true;
    }
    return false;
});

}

// 启动主程序
main();

相关文章
|
5月前
|
安全 数据安全/隐私保护
屏幕自动点击器, 手机自动点击器, 自动连点器屏幕【autojs】
完整UI界面:包含悬浮窗控制面板,支持拖动位置调整 核心功能:单点/连续点击、位置记录、任务执行与停止
AutoJs4.1.0实战---部局范围次分析(带图)
AutoJs4.1.0实战---部局范围次分析(带图)
282 0
|
XML 前端开发 IDE
在 Compose 中使用 Jetpack 组件库
在 Compose 中使用 Jetpack 组件库
1191 0
|
2月前
|
机器学习/深度学习 自然语言处理 搜索推荐
数字人实时交互技术突破:集之互动实现0.8秒全链路响应
集之互动打造全链路自研数字人系统,实现0.8秒超低延迟实时交互。涵盖端侧推理、多模态理解、情感化生成与精准唇形同步四大核心技术,支持私有化部署与行业知识定制,已在医疗、零售、政务等场景落地,推动数字人从工具迈向情感化智能伙伴。
|
5月前
|
编解码 监控 数据安全/隐私保护
免root屏幕录制脚本, 免root手机录制脚本,屏幕连点器点击【autojs】
完整屏幕录制功能:支持自定义分辨率、帧率和比特率 悬浮窗控制界面:提供直观的操作按钮和状态显示
|
5月前
|
安全 机器人 数据安全/隐私保护
手机屏幕点击器,屏幕自动点击器,免费连点器(自动点击)【autojs】
完整UI界面:包含坐标录制、执行控制、参数设置等区域 坐标录制功能:实时捕捉屏幕点击位置并记录坐标
|
5月前
|
Ubuntu Linux 数据安全/隐私保护
一步步学习:Ubuntu系统安装教程
准备完毕,点击“现在安装”,系统开始安装。安装过程中,Ubuntu会显示一些新特性和提示信息。安装完毕后,点击“现在重启”,然后按照提示操作,拔出U盘或DVD盘,再次按下回车,电脑将会再次启动,这次进入的就是全新的Ubuntu操作系统了。 尽管初次安装Ubuntu可能有所困难,但只要跟着步骤走,掌握了规律,就能轻松过关。Ubuntu是个友好且强大的系统,我相信你在探索它的过程中会收获满满。
|
JavaScript Java 测试技术
基于SpringBoot+Vue+uniapp的学生学籍管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
基于SpringBoot+Vue+uniapp的学生学籍管理系统的详细设计和实现(源码+lw+部署文档+讲解等)
290 1
|
10月前
|
机器学习/深度学习 人工智能 自然语言处理
数字化转型时代,HR如何用人事管理系统突破效率天花板?
本文深入剖析传统HR面临的四大效率困局,包括招聘低效、考勤错误频发、绩效管理混乱及数据决策滞后,并提出人事管理系统的核心功能矩阵作为解决方案。文章详细解读了招聘自动化引擎、智能考勤生态、绩效飞轮系统和数据决策驾驶舱的创新应用,帮助HR突破效率瓶颈。同时,针对系统选型提供了科学指南,强调适配性与实施策略的重要性。最后,展望HR系统未来三大进化方向:体验驱动、智能预测和生态互联,助力企业实现人力资源管理的数字化转型。
|
监控 JavaScript 前端开发
autojs,监控屏幕以及获取所有应用
autojs,监控屏幕以及获取所有应用