autoJS pro-手机自动化脚本(悬浮框控制以及打印log)

autoJS自动化

本人是一个web前端开发工程师,没想到可以用javascript来实现手机自动化,就有了之后的一系列文章,有好建议的同学欢迎评论区分享 ;-)

专栏地址:点击此处

在这里插入图片描述



开发环境

不同的环境可能导致部分代码运行有问题,所以开发者要确定好自己对应的环境

autojs版本:Pro 9.2.13-0
手机型号:小米8
android版本:10
开发工具:vscode
vscode连接插件:Auto.js-Pro-Ext
脚本对应软件:douyin极速版 version22.3.0

链接

autojs参考文档:点击
CSDN专栏:点击
gitee地址:点击

背景

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"))
})();
  • 2
    点赞
  • 10
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

Penk是个码农

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值