java操控手机刷锦鲤看看(一个类似头条的赚钱app)
前提准备: 1.http://www.android-studio.org/ 下载手机android sdk manage,根据adb在电脑上的环境变量 2.手机 (我的是荣耀10 android 8.1.0 屏幕大小2280 1080) 3.查看robot类使用 ,查看手机 adb 简单语法
步骤:1.手机打开开发者模式,连到电脑
2.电脑调到cmd模式,输入adb services 查看是否有手机接入(两个目的:1.检查adb可以看出是否好的2.可以看到手机的驱是否可以)
3.在idea输入一下代码(参数有你手机实际来调)
package org.pgj;
import org.springframework.boot.autoconfigure.SpringBootApplication;import javax.swing.*;
import java.awt.*;
import java.awt.event.ActionEvent;
import java.awt.event.ActionListener;
import java.awt.event.KeyEvent;
import java.lang.reflect.Field;
import java.lang.reflect.Modifier;
import java.util.*;/*** @author Administrator* @date 2018/12/18 1:39*/
@SpringBootApplication
public class App {private volatile static int second1 = 500;private static Robot robot;private static Thread thread = new Thread(() -> {startADB();});static {try {robot = new Robot();} catch (AWTException e) {e.printStackTrace();}}public enum State {YSE, NO}public static void main(String... args){drawFrame();}public static void drawFrame() {// 创建 JFrame 实例JFrame frame = new JFrame("Example");// Setting the width and height of frameframe.setSize(350, 150);frame.setDefaultCloseOperation(JFrame.EXIT_ON_CLOSE);JPanel panel = new JPanel();frame.add(panel);placeComponents(panel);frame.setVisible(true);}private static void placeComponents(JPanel panel) {panel.setLayout(null);JLabel userLabel1 = new JLabel("刷新次数:");userLabel1.setBounds(10, 20, 80, 25);panel.add(userLabel1);/** 创建文本域用于用户输入*/final JTextField userText1 = new JTextField(20);userText1.setBounds(100, 20, 165, 25);userText1.setText("500");panel.add(userText1);// 创建运行按钮JButton loginButton = new JButton("开始");loginButton.setBounds(150, 60, 80, 25);panel.add(loginButton);loginButton.addActionListener(new ActionListener() {@Overridepublic void actionPerformed(ActionEvent e) {second1= Integer.valueOf(userText1.getText());if(!thread.isAlive()){thread.start();}}});}public static void startADB() {try {robot = new Robot();} catch (AWTException e) {e.printStackTrace();}robot.setAutoDelay(100);pressCMDEdit();pressADBEdit();for (int i = 0; i < second1; i++) {pressFirstTap();pressSwipe();robot.delay(100);pressFlassh();}}/** 单击* */private static void pressMeta(int key) {robot.keyPress(key);robot.keyRelease(key);}private static void pressString(int... keys) {for (int i = 0; i < keys.length; i++) {if (keys[i] == 0) {continue;}pressMeta(keys[i]);}pressMeta(KeyEvent.VK_ENTER);robot.delay(50);}private static int[] convertStrsToInts(String strs) {int[] targe = new int[100];Class<KeyEvent> keyEventClass = KeyEvent.class;Field[] fields = keyEventClass.getDeclaredFields();Map<String, Integer> fieldMap = getFieldMap(fields);for (int i = 0; i < strs.length(); i++) {String targeName = String.valueOf(strs.charAt(i));if (targeName.equals(" ")) {targe[i] = KeyEvent.VK_SPACE;continue;}Integer targeInteger = fieldMap.get(targeName);if (targeInteger == null) {System.out.println(targeName);continue;}targe[i] = targeInteger.intValue();}return targe;}public static Map<String, Integer> getFieldMap(Field[] fields) {Map<String, Integer> map = new HashMap<>();for (Field field : fields) {field.setAccessible(true);if (field.getType() == int.class && Modifier.isStatic(field.getModifiers())) {String fieldName = field.getName();int i = fieldName.lastIndexOf("_");if (i == 0 || i < 0) {continue;};String targeName = fieldName.substring(i + 1, fieldName.length()).toLowerCase();try {int keyValue = field.getInt(KeyEvent.class);map.put(targeName, keyValue);} catch (IllegalAccessException e) {continue;}}}return map;}/** 快捷键* */private static void pressTwoMeta(int... keys) {for (int i = 0; i < keys.length; i++) {if (keys[i] == 0) {continue;}robot.keyPress(keys[i]);}for (int i = 0; i < keys.length; i++) {if (keys[i] == 0) {continue;}robot.keyRelease(keys[i]);}robot.delay(50);}/** 进入cmd编辑页面* */private static void pressCMDEdit(){pressTwoMeta(KeyEvent.VK_WINDOWS, KeyEvent.VK_R);pressString(convertStrsToInts("cmd"));}/** 进入ADB编辑页面* */private static void pressADBEdit() {pressString(convertStrsToInts("adb shell"));}/*下滑* */private static void pressSwipe() {for (int i = 0; i < 13; i++) {pressString(convertStrsToInts("input swipe 400 1000 400 100 1000 "));pressSometimeView();if (i == 1) {pressString(convertStrsToInts("input tap 400 800"));}}robot.delay(100);pressString(convertStrsToInts("input tap 50 200"));}private static void pressFlassh() {pressString(convertStrsToInts("input swipe 400 400 400 1000 150"));}/** 点击第一行广告* */private static void pressFirstTap() {pressString (convertStrsToInts("input tap 400 400"));}
/*处理偶尔出现的彩蛋
* */private static void pressSometimeView(){
///
}
}
唉,随便写写玩玩,沾点外挂的边!后续努力
java操控手机刷锦鲤看看(一个类似头条的赚钱app)相关推荐
- 用python操控手机刷视频,自动刷金币
需求:最近有好多视频app,号称只要不断看视频,就可以赚钱,所以,但是手动刷刷着刷着就烦了,所以想解放一下双手,用程序来刷吧. 用python操控手机刷视频,自动刷金币 前期准备: 硬件准备 软件准备 ...
- java与SPARK的使用的一个类似文章
https://blog.csdn.net/qq_35688140/article/details/89195016
- 用Java做手机备忘录_基于安卓Android的备忘录系统APP的设计(Eclipse)
基于安卓Android的备忘录系统APP的设计(Eclipse)(任务书,开题报告,论文13000字,程序代码) 摘要 随着移动互联网的高速发展,智能手机的使用已经普及.为了能让智能手机发挥更大的应用 ...
- 【和UI斗智斗勇的日子】如何实现一个类似哈罗单车APP主页打车模块的卡片式切的View
一.明确需求 看到这个标题,相信不少没有见过哈罗单车APP主页的朋友都是懵的,下面我先放下哈罗单车APP的样式: 如上图所示,这个模块主要由标题和内容两部分组成,乍一看好像也没有什么难的,相信不少人马 ...
- 多少开发人员 饿了么_开发一款类似饿了么APP,大概需要多少?
作为一个注重饮食的中国,我们已经达到了对饮食的高度.然而,因为我们有时懒得出门或者有太多的事情要处理,吃饭也将成为用户的一个问题.然而,类似饿了么appP应用(hunger app)的开发是针对当代人 ...
- 【新人求助】苹果允许开发者制作类似按键精灵的app吗?
环境:ios.不越狱 我在网上搜了一下发现了一个app叫触摸精灵,但是貌似需要越狱才能使用,所以想问问大神们,苹果允许开发者制作类似按键精灵的app吗?如果我申请成为开发者,然后做一个类似按键精灵的a ...
- 每张脸值5美元,谷歌花钱买数据强化刷脸,还把隔空操控手机变成现实
乾明 发自 凹非寺 量子位 报道 | 公众号 QbitAI 你的面部数据,值多少钱?谷歌给出了定价:每张脸价值5美元(券). 根据多家外媒报道,谷歌员工正"游荡"在美国街头,有偿 ...
- java刷机_java非智能手机能不能通过刷机安装一个安卓智能系统
过刷机安装一个安卓智能系统 现在安卓系统火的一塌糊涂,除了苹果以外的很多品牌机都在使用安卓的操作系统,当然也包括很多配置比较高的山寨机,这样一来很多使用java非智能手机的用户心里就开始嘀咕 了.山寨 ...
- java语言编程三角形图形_编程题:编写程序输入三角形的3条边长,计算并输出... 求助一道JAVA编程题:编写一个类似记事本的图形用......
导航:网站首页 > 编程题:编写程序输入三角形的3条边长,计算并输出... 求助一道JAVA编程题:编写一个类似记事本的图形用... 编程题:编写程序输入三角形的3条边长,计算并输出... 求助 ...
最新文章
- 缩放浏览器不会换行_深入了解现代浏览器之三 - 渲染
- webpack-插件机制杂记
- pandas的分列操作str.split()
- yellow weasel
- Python 基础篇-whl文件怎么安装
- SAP Marketing和SAP Marketing Cloud的区别
- Android之Intent 序列化反序列化
- yum时报Error: rpmdb open failed解决方法
- 基于matlab的绘图设计,matlab课程设计---利用MATLAB仿真软件进行绘图
- PAT:1059. Prime Factors (25) AC
- 【数据结构】--章节2.2----线性表的顺序表示和实现
- Qt添加qrc文件_添加pri文件_添加预编译头文件
- 干货 | 腾讯云智能语音行业落地探索与实践
- Mac 配置maven
- java 文件名过滤特殊字符
- OAS的使用——概述
- 开启Fluter基础之旅二-------Future再论、常用组件、Material Design风格组件学习
- 不想复制粘贴了,爬取TED视频的语言脚本
- 衡水二中2021年高考成绩查询,2020衡水二中高考喜报
- MongoDB-curd总结