金沙澳门官网jin5888:微信跳一跳,代码解析

重中之重原理

用usb调节和测试安卓手提式无线电话机,用adb截图并用鼠标衡量相差,然后总结按压时间后模拟按压。

一:在计算机上下载好adb,并设置JDK7及以上版本以及布置好java情状变量

SDK Platform-Tools for
Windows

SDK Platform-Tools for
Mac

SDK Platform-Tools for
Linux

JDK安装就隐瞒了!


3adb驱动装置
    adb驱动下载地址:https://adb.clockworkmod.com/     下载完后  将adb 命令
增加到系统景况变量里面
     展开CMD调整台,输入adb,出现如下分界面,即为配置成功。如图:
     金沙澳门官网jin5888 1

最后

有时光切磋一下写3个Android的脚本。相当发问哈

先来看一看效果呢:

金沙澳门官网jin5888 2


 
6.设置手提式有线电话机权限

过程

一,Computer安装好Java情状。做Java的掠过。。

课程地址:java情况搭建教程

二,在管理器上下载好adb。

下载地址:adb下载

三,展开安卓手提式有线电话机的usb调节和测试方式并授权连接的Computer

课程地址:开垦安卓手提式有线电话机的usb调节和测试格局

在意:借使是OPPO手提式有线电话机,在USB调节和测试下方有USB调节和测试(安全设置)张开允许模拟点击 

*
*

usb调节和测试(安全设置)

四,打开微信跳1跳,点击伊始

点击起先

5,用极端展开adb,并实行一下adb shell

        五.1,展开终端

开垦终端

       
伍.二,将刚刚下载好的adb压缩包解压找到adb.exe,拖动至终点后按回车键。

拖到终端

按回车键

伍.三,并实行一下adb shell,确认adb已经一而再上手提式无线电话机后输入exit离开adb shell

陆,下载jar包放到桌面,桌面就可以。

下载地址:jar包

7,在终点输入指令如下

java -jar playJumpJumpWithMouse-0.0.4.jar -a
F:\\Android\\sdk\\platform-tools\\adb.exe

F:\Android\sdk\platform-tools\adb.exe记得换来自个儿刚刚下载的adb.exe的地点

八,之后稍等一会会出现手提式有线电话机分界面

九,然后每趟点击下2个要跳到的四方中央点就马到功成了。

二:张开安卓手提式有线电话机的usb调节和测试情势并授权连接的管理器

 金沙澳门官网jin5888 3

起因

微信恰好更新了二个版本,首要推荐了3个叫跳1跳的小程序。蹲坑完了二小时,完了300多点,站都站不起来。。。

上网溜了一派,都以python。不会….只会Java。逛了须臾间GutHub的Java日推,看了一个人猿友的空余小说。挺风趣的,切磋了一番,倍风趣,跟我们分享1波。

感兴趣的可以去OB一波,github地址。

留神: 借使是华为手提式有线话机,在USB调节和测试下方有USB调节和测试(安全设置)张开允许模拟点击


import numpy as np
import matplotlib.pyplot as plt
import matplotlib.animation as animation
from PIL import Image
import math
import time
import os


def pull_screenshot():    定义 截取手机屏幕 并 发送截图到电脑  函数
    os.system('adb shell screencap -p /sdcard/autojump.png')  发送 截屏命令 到手机
    os.system('adb pull /sdcard/autojump.png .')              发送 拉取图片到电脑 命令

def jump(distance):                 定义 跳跃函数 形参为距离
    press_time = distance * 1.35    计算按屏幕 时间 
    press_time = int(press_time)
    cmd = 'adb shell input swipe 320 410 320 410 ' + str(press_time) 按屏幕命令
    print(cmd)
    os.system(cmd)    发送 按屏幕命令

fig = plt.figure()    创建一个图像对象(窗口) 
index = 0
cor = [0, 0]

pull_screenshot()   执行截屏函数
img = np.array(Image.open('autojump.png'))  Image.open读取图片  到名为 img 的图片数组

update = True 
click_count = 0
cor = []

def update_data():  定义更新数据的函数  更新图片
    return np.array(Image.open('autojump.png'))

im = plt.imshow(img, animated=True)      im = 绘制图像(数组名、动画=打开)


def updatefig(*args):      定义动画函数
    global update
    if update:
        time.sleep(1.5)
        pull_screenshot()
        im.set_array(update_data())
        update = False
    return im,

def onClick(event):         定义 鼠标点击 处理函数
    global update    
    global ix, iy
    global click_count
    global cor

    # next screenshot

    ix, iy = event.xdata, event.ydata 
    coords = []
    coords.append((ix, iy))         [(x1,y1)|(x2,y2)]
    print('now = ', coords)
    cor.append(coords)              [[(x1,y1)],[(x2,y2)]]


    click_count += 1
    if click_count > 1:
        click_count = 0

        cor1 = cor.pop()      [(x2,y2)]
        cor2 = cor.pop()      [(x1,y1)]

        distance = (cor1[0][0] - cor2[0][0])**2 + (cor1[0][1] - cor2[0][1])**2 
                        x2 - x1                           y2 - y1      
        distance = distance ** 0.5
        print('distance = ', distance)
        jump(distance)
        update = True



fig.canvas.mpl_connect('button_press_event', onClick)  鼠标点击 处理函数 onClick  
ani = animation.FuncAnimation(fig, updatefig, interval=50, blit=True)
                          图像函数    动画函数    更新频率50ms    更新所有点
plt.show()   显示图像

四:用极端打开adb,并奉行一下adb shell,确认adb已经接二连三上手机后输入exit离开adb shell

突发性大概会冒出adb连接不上的主题素材

一:必须关闭360有线电话帮手这一个看似的软件

2: 有极大概率以前接连退步,导致端口占用,kill掉

金沙澳门官网jin5888:微信跳一跳,代码解析。   壹)查看占用50叁柒端口的先后PID

        netstat -ano | findstr 5037

        2) taskkill /f /t /pid 4596


 

5:输入指令

在cmd中进入jar包所在的目录下,施行一下命令.就会起来活动跳一跳

有意思味的大团结打jar包:github地址

金沙澳门官网jin5888:微信跳一跳,代码解析。那是打好的jar: jar包地址

java -jar playJumpJumpWithMouse.jar -a

windows eg: java -jar playJumpJumpWithMouse-0.0.2.jar -a
“D:\platform-tools-latest-windows\金沙澳门官网jin5888:微信跳一跳,代码解析。platform-tools\adb.exe” -m2


金沙澳门官网jin5888:微信跳一跳,代码解析。如图,大家利用CD命令,切换来源码的下载目录,
再施行命令pip install -r
requirements.txt

金沙澳门官网jin5888:微信跳一跳,代码解析。3:打开微信跳一跳,并点击开首 

金沙澳门官网jin5888:微信跳一跳,代码解析。停在开头页面就足以了


参数调解请张开源码目录下的config文件夹,里面有适配种种显示器和机型的公文夹,
依附自个儿的分辨率或机型,点击进入相应文件夹,展开个中的config.json文件,修改参数就能够。提议修改前最棒备份一份。

 金沙澳门官网jin5888 4

 

四.下载源码

规律(摘自项目表明页面):
①.
将手提式无线电话机点击到“跳壹跳”小程序分界面;

python wechat_jump_py3.py

相关文章