autoJS自动化
本人是一个web前端开发工程师,没想到可以用javascript来实现手机自动化,就有了之后的一系列文章,有好建议的同学欢迎评论区分享 ;-)
专栏地址:
点击此处
开发环境
不同的环境可能导致部分代码运行有问题,所以开发者要确定好自己对应的环境
autojs版本:Pro 9.2.13-0
手机型号:小米8
android版本:10
开发工具:vscode
vscode连接插件:Auto.js-Pro-Ext
脚本对应软件:douyin极速版 version22.3.0
链接
背景
autojsPro真机测试的时候,经常会有部分信息不能直接显示出来,如果通过toast()的话,会自动消失,不能查看记录。
为此,这边设置了一个浮动框,一方面是用来做操控,另外一方面就是为了打印数据并且可以实时查看。
功能笔记
1. 创建悬浮框
现在,每次APP中,有log打印的话,就会实时到弹框中…
/*
* @Author: Penk
* @desc: 这边封装好了,直接require(./当前文件)即可,当了,记得把它download到本机上...
* @LastEditors: Penk
* @LastEditTime: 2022-09-15 13:11:38
* @FilePath: \autojs\ui界面.js
*/
;(function(){
var mDialog = floaty.window(
<card id="consoleWarp" cardCornerRadius="10" cardBackgroundColor="#00000000" cardElevation="0">
<vertical id="root" gravity="center" padding="10dp">
<button id="switch" text="开始" />
<console id="console" w="*" h="*" />
</vertical >
</card>
);
var storage = storages.create("dy");
if(!!storage.get("switch")){
storage.put("switch", true);
mDialog.switch.attr("text", "停止");
}else{
storage.put("switch", false);
mDialog.switch.attr("text", "开始");
}
//指定确定按钮点击时要执行的动作
mDialog.switch.on("click", function(){
var text = mDialog.switch.text();
if(text=='开始'){
storage.put("switch", false);
mDialog.switch.attr("text", "停止");
}else if(text=='停止'){
storage.put("switch", true);
mDialog.switch.attr("text", "开始");
}
})
let mDialog_options = {
alpha: 0.7, //透明度,可选值:0.0-1.0 默认值:0.6
frontColor: "#00ff00", //文字颜色,可选值:颜色代码 默认值:"#ffffff"
frontSize: 15, //文字大小,单位sp,可选值:0+ 默认值:16,
adjustEnabled:true, //是否启用悬浮窗调整(大小、位置),
size:[800,500], // 设置悬浮窗大小
position:[100,100], //设置悬浮窗位置。
};
ui.run(() => {
let bg = colors.parseColor("#66000000");
if (mDialog_options.alpha < 1 && mDialog_options.alpha > 0) bg = colors.parseColor("#" + parseInt(mDialog_options.alpha * 255).toString(16) + "000000");
mDialog.root.setBackgroundColor(bg);
mDialog.console.setConsole(runtime.console);
mDialog.console.setColor("D", mDialog_options.frontColor || "#ffffff");
mDialog.console.setTextSize(mDialog_options.frontSize || 16);
mDialog.console.setInputEnabled(false);
// 设置其他参数
// rawWindow的对象才有
// mDialog.setTouchable(false);
// window的对象才有
mDialog.setAdjustEnabled(mDialog_options.adjustEnabled);
mDialog.setSize(mDialog_options.size[0],mDialog_options.size[1]);
mDialog.setPosition(mDialog_options.position[0],mDialog_options.position[1]);
});
// exit();
setInterval(() => {}, 1000);
log("开始监听log...");
log("当前开关按钮:",storage.get("switch"))
})();
版权声明:本文为cs492934056原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。