谈恋爱要做什么事?
除了用心之外,每天早安晚安必然是少不了的。但是每天都发免不了会忘, 为了避免遗忘,引起不必要的尴尬,我们可以做个自动化脚本来做这件事。

1 auto.js 是什么?

Auto.JS是Android平台上的JavaScript自动化工具。
它的本质是可执行自己编写的简易Javascript脚本的,尤其可以在开启“无障碍模式”的情况下对其他App进行一些操作的一个Android App,便于进行自动化操作。官网:https://github.com/hyb1996/Auto.js
官网有完善的安装教程,大家可以按照教程配置。只要安卓7.0就可以了,不需要root.

2 auto.js 能做什么?

  1. 编写自动化脚本 ,蚂蚁森林自动收能量
  2. 双十一淘宝自动抢购
  3. 钉钉打卡等
  4. 手机游戏脚本等等
  5. 等等,反正自动化的操作都可以

3 为什么要选择auto.js?

  • 开源:代码开源,可以查到源码,安全以及问题解决更好
  • 无需root, 安卓7.0以上功能不需要root ;
  • 免费: 只要不违法, 你可以免费使用;
  • 语言:使用javaspcrit语言,容易入门
  • 扩展:提供js 转java桥梁
  • 开发环境: 作者提供了良心好用的vscode开发环境,可以直接调试手机 ,在同一局域网下就可以 。

4 教程

  1. 学习教程主要是官网的api介绍,非常详细;
  2. B站UP主笔青居教程讲的系统全面 :https://space.bilibili.com/21486893?from=search&seid=11249136233738857210
  3. 开发实践,可以参考这篇博客Auto.JS入门宝典,关键的方法都总结了

5 实战 ——微信自动发消息

可以把具体的步骤分解如下 :

  1. 如果手机在休眠,则唤醒屏幕解锁 ,否则直接下一步;
  2. 启动微信 ;
  3. 从四个板块中,找到第二个通讯录 ;
  4. 从通讯录中找到 ,需要的对象,即发消息的那个人;
  5. 点击发消息 ;
  6. 编辑文字发送,或者发表情 ;
  7. 退出微信;
  8. auto.js 设定定时执行脚本, 每天6:30自动执行 ;
    代码如下:
// 解锁
function jiesuo(password){
if(!device.isScreenOn()){
device.wakeUpIfNeeded();
sleep(100);
swipe(800,2300, 800, 1000,1000);
for (var i=0;i<password.length;i++){
n = text(x[i].toString()).findOne();
n.parent().click();
sleep(800);
}
}
}
// 发微信消息
function faxiaoxi(name){
launch("com.tencent.mm");
sleep(1000);
setScreenMetrics(1200, 2640);
click(106,2057,599,2375); // 手机有微信分身, 点开第一个微信
sleep(2000);
tongxunlu = id("dub").className("android.widget.TextView").text("通讯录").findOne();
tongxunlu.parent().click(); // 到达通讯录
sleep(2000);
twd = text(name).findOne();
var b = twd.bounds();
click(b.centerX(), b.centerY());
faxiaoxi = text("发消息").findOne();
faxiaoxi.parent().click();
sleep(2000);// 到达聊天框
x= random(0,2)
if(x==0){
wenben = className("EditText").findOne();
wenben.setText("早安"); //发早安
sleep(1000);
text("发送").findOne().click()
}else if(x==1){
id("ay9").findOne().click();
sleep(2000);
click(300,1950); // 发一个表情 // 首先设置好表情
}else{
id("ay9").findOne().click();
sleep(2000);
click(500,1950); // 发另一个个表情
}
}
password = [1,2,3,4]; // 解锁密码
jiesuo(password);
// 到达主屏
faxiaoxi("baby");
swipe(1000,2600, 1000, 2300,100); // 退出微信 //华为手机向上滑动退出

5 效果展示

每天发一样的可能会被发现,代码里加了一个随机数x, 0 是发”早安“,1和2为不同的表情, 下面我们注册一个小号伪装成女生的号演示一下,主动开启脚本效果如下,

可以看到,不仅是发早安, 定时发送任何消息都行

侦探笔记www.cangyuantuxs.com/

侦探笔记移动端5g.cangyuantuxs.com/

谈恋爱要做什么事?基于auto.js自动发早安给女朋友的更多相关文章

  1. 程序员过年必备 -- Auto.js微信自动抢红包

    打开微信就不用管了: - 自动打开未读消息 - 自动滑动屏幕检测红包 - 自动跳过无效红包 基于Auto JS,apk版本4.01: - 大多数动作均基于控件 - 极个别点击基于动态抓取的坐标 - 这 ...

  2. 【XSS】对抗蠕虫 —— 如何让按钮不被 JS 自动点击

    前言 XSS 自动点按钮有什么危害? 在社交网络里,很多操作都是通过点击按钮发起的,例如发表留言.假如留言系统有 XSS,用户中招后除了基本攻击外,还能进行传播 -- XSS 自动填入留言内容,并模拟 ...

  3. 基于原生js的图片延迟加载

    当页面图片比较多的时候,我们通常会做一个延迟加载,避免页面打开时一下子的请求数太多,加载过慢影响用户体验. 如果项目用了jquery框架,则可以直接用 jquery.lazyload.可在jquery ...

  4. Auto.js无障碍免root脚本开发学习

    Auto.js 简单入门 官方文档:https://hyb1996.github.io/AutoJs-Docs/#/ https://blog.csdn.net/QiHsMing/article/de ...

  5. 基于 React.js + Redux + Bootstrap 的 Ruby China 示例 (转)

    一直学 REACT + METEOR 但路由部分有点问题,参考一下:基于 React.js + Redux + Bootstrap 的 Ruby China 示例 http://react-china ...

  6. 用jQuery基于原生js封装的轮播

    我发现轮播在很多网站里面都用到过,一个绚丽的轮播可以为网页增色不少,最近闲来无事,也用原生js封装了一个轮播,可能不像网上的插件那么炫,但是也有用心去做.主要用了闭包的思想.需要传递的参数有:图片地址 ...

  7. 基于Node.js的强大爬虫 能直接发布抓取的文章哦

    基于Node.js的强大爬虫 能直接发布抓取的文章哦 基于Node.js的强大爬虫能直接发布抓取的文章哦!本爬虫源码基于WTFPL协议,感兴趣的小伙伴们可以参考一下 一.环境配置 1)搞一台服务器,什 ...

  8. 《基于Node.js实现简易聊天室系列之详细设计》

    一个完整的项目基本分为三个部分:前端.后台和数据库.依照软件工程的理论知识,应该依次按照以下几个步骤:需求分析.概要设计.详细设计.编码.测试等.由于缺乏相关知识的储备,导致这个Demo系列的文章层次 ...

  9. 基于 Vue.js 之 iView UI 框架非工程化实践记要

    像我们平日里做惯了 Java 或者 .NET 这种后端程序员,对于前端的认识还常常停留在 jQuery 时代,包括其插件在需要时就引用一下,不需要就删除.故观念使然,尽管 Nuget 和 Maven ...

  10. 基于Three.js的360度全景--photo-sphere-viewer--简介

    这个是基于three.js的全景插件  photo-sphere-viewer.js  ---------------------------------------- 1.能添加热点: 2.能调用陀 ...

随机推荐

  1. Nginx+UWSGI+supervisor

    Tengine是由淘宝网发起的Web服务器项目.它在Nginx的基础上,针对大访问量网站的需求,添加了很多高级功能和特性.Tengine的性能和稳定性已经在大型的网站如淘宝网,天猫商城等得到了很好的检 ...

  2. DHCP中继(cisco)

    DHCP中继(cisco) 要求:PC0.PC1和PC2的IP地址从DHCP-server里获取,并ping通PC3 IP地址规划表: 设备 接口 IP地址 Multilayer Switch0 Fa ...

  3. Alfred 好用工具分享

    好用的mac工具分享 1.带历史记录的剪切板 根据快捷键切换选择保存的数据 2.创建热键工作流程 将常用的工具变为热键,快捷切换 如何创建: 设置热键 单击右键 创建actions 打开app 然后将 ...

  4. Linux非正式学习随笔(1)

    11.5进linux学的第一件事,找个中文输入法.Linux是一套免费的类unix操作系统GPL:gnu通用公共许可证.托马斯斯托曼提出gnu计划,自由软件思想的一个协议.Linux诞生1991年10 ...

  5. Leetcode本地阅读器开发--01界面设计一

    返回项目声明及目录:Leetcode本地阅读器开发--总声明 整个界面设计如下:后续可能会不断优化和加入新功能 1.启动后界面 2.进行具体题目搜索 3.进行分类搜索 本节主要介绍程序界面的绘制: 1 ...

  6. pytest与allure的使用

    --需要先安装pytest [1]数据驱动@pytest.mark.parametrize: @pytest.mark.parametrize只对于同一用例不同数据的传参 ①只有一个参数时 datat ...

  7. vue父子件,子件页面table数据列按条件显示不同的内容

    需求:在父件中点击按钮.子件弹框中,table列根据条件显示不同的数据 实现思路:点击按钮,执行不同的方法,方法中参数值不同,从而展示不同的columns. 父件按钮如下图: 父件中导入子件需要注意的 ...

  8. 使用DockerCompose部署微服务项目(基于Springboot搭建一个简易计数器)

    准备Dockerfile FROM java:8 #基于jdk8的环境 COPY *.jar /app.jar #拷贝所有的jar包到/app.jar目录下 CMD ["--server.p ...

  9. SQL Server datetime类型为null的有趣实验

    @data1 --变量 测试用 @data2 --当前时间 当@data1为null 则格式转换错误 直接控制台什么也不显示 也不报错 当定义'' 显示默认时间

  10. deepin系统编辑pdf文件的两个简单方法(终端命令行模式)

    DEEPIN深度系统编辑PDF文件有时竟然超级简单好用,比WINDOWS系统需要单独下载一个PDF编辑软件的方法强多了,而且windows系统PDF编辑软件还有版权限制,各种作啊. 下面的两条命令,使 ...