【autojs】Auto.js Pro安卓QQ语音红包秒抢挂免费脚本源码

本文介绍如何使用Auto.jsPro开发免ROOT的安卓脚本,包括使用JavaScript语法,实现界面动作模拟,适用于全分辨率设备,以及丰富的UI组件和命令库。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

//此代码由飞云脚本圈整理提供(www.feiyunjs.com)
importPackage(android.speech.tts);
importClass(java.util.Locale);
importClass(java.io.File);

var PackName = "com.tencent.mobileqq"
if (currentPackage() != PackName) { launchPackage(PackName); }
var ButtonRecoard = depth(8).className("android.view.View").desc("录音按钮 按住录音").untilFind();
var RedPacketText = ButtonRecoard[0].parent().child(0).getText().replace(/“/g, "").replace(/”/g, "");

var TTS = new TextToSpeech(context, function (status) {
    if (status != TextToSpeech.SUCCESS) {
        toast("初始化TTS失败");
    }
    var r = TTS.setLanguage(Locale.CHINA);
    if (r < 0) {
        toast("不支持该语言: " + r);
        exit();
    }
    log("TTS初始化成功");
});
events.on("exit", function () {
    if (TTS) {
        TTS.shutdown();
        TTS = null;
    }
    if (thread.isAlive()) { thread.interrupt(); }
    files.remove("/sdcard/脚本/TTS_Temp.mp3");
});
sleep(200)
var time = GetTTSDuration(RedPacketText);
toastLog(RedPacketText + "\n" + "TTS预计朗读用时" + time + "ms");
thread = threads.start(function () {
    device.vibrate("10");
    var ButtonRecoardPos = ButtonRecoard[0].bounds();
    press(ButtonRecoardPos.centerX(), ButtonRecoardPos.centerY(), (time + 500));
    device.vibrate("10");
});
sleep(100);
speech(RedPacketText);

function speech(ttsText, fileName) {
    if (ttsText.length <= TextToSpeech.getMaxSpeechInputLength()) {
        if (fileName) {
            var file = new File(fileName);
            if (!file.exists()) {
                file.createNewFile();
            }
            TTS.synthesizeToFile(ttsText, null, file, Math.random());
        } else {
            TTS.speak(ttsText, TextToSpeech.QUEUE_FLUSH, null);
            //QUEUE_FLUSH插队,QUEUE_ADD排队
        }
        return true;
    } else {
        toast("朗读文本过长");
        return false;
    }
}
function GetTTSDuration(TTS_Text) {
    speech(TTS_Text, "/sdcard/脚本/TTS_Temp.mp3");
    sleep(200);
    log(files.exists("/sdcard/脚本/TTS_Temp.mp3"))
    media.playMusic("/sdcard/脚本/TTS_Temp.mp3");
    media.pauseMusic();
    var MusicDuration = media.getMusicDuration();
    media.stopMusic();
    return MusicDuration;
}

说明

本文提供的代码仅供参考。
可能有些地方在最新版本的Auto.js上面需要做修改,才能运行。

Auto.js简介

Auto.js是利用安卓系统的“辅助功能”实现类似于按键精灵一样,可以通过代码模拟一系列界面动作的辅助工作。
与“按键精灵”不同的是,它的模拟动作并不是简单的使用在界面定坐标点来实现,而是类似与win一般,找窗口句柄来实现的。

Auto.js使用JavaScript作为脚本语言,目前使用Rhino 1.7.7.2作为脚本引擎,支持ES5与部分ES6特性。

开发文档

Auto.js Pro开发文档优化版
文档尚在完善中,可能有文档描述和代码实际行为有出入的情况。
模板、样式、generator来自Node.js。

为什么要使用Auto.js Pro开发脚本,有什么特点?

吸引我使用Auto.js Pro的原因有很多。最主要的几个原因是:

  • Auto.js Pro能开发免ROOT的安卓脚本
  • Auto.js Pro基于节点操作,能开发全分辨率的脚本,自动适配各种安卓机型
  • Auto.js Pro丰富的UI组件,能自定义各种样式的安卓界面
  • Auto.js Pro使用的javascript的语法比较优雅,代码可读性强
  • Auto.js Pro的命令库非常的丰富,接口比较多
  • Auto.js Pro脚本文件体积比较小。1000行的代码,打包后的apk文件只有3-5M,还没有广告

相关教程

Auto.js Pro安卓全分辨率免ROOT引流脚本开发教程

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值