当前位置: 首页 > ds >正文

adb 与pad 交互方法

event

import requests
import time
import random
import os# http://fspcdiy.d33173.chshtzs.com/action.php
# 连接设备(有线直接连接,无线需先执行adb tcpip 5555)
os.system('adb devices')  # 验证连接# 定义点击函数
def tap(x, y):os.system(f'adb shell input tap {x} {y}')def check_status():# 添加随机参数和禁用缓存的请求头timestamp = int(time.time())rand = random.randint(0, 9999)url = f"http://fspcdiy.d33173.chshtzs.com/do.php?cmd=status&_={timestamp}{rand}"headers = {'Cache-Control': 'no-cache, no-store, must-revalidate','Pragma': 'no-cache','Expires': '0'}try:response = requests.get(url, headers=headers)if response.status_code == 200:content = response.text.strip()if content.startswith("Current action: "):value = content[len("Current action: "):].strip()print('test:' + value)return valuereturn Noneexcept requests.RequestException as e:print(f"请求出错: {e}")return Nonedef delete_action():# 同样为delete请求添加防缓存措施timestamp = int(time.time())rand = random.randint(0, 9999)delete_url = f"http://fspcdiy.d33173.chshtzs.com/do.php?cmd=delete&_={timestamp}{rand}"headers = {'Cache-Control': 'no-cache, no-store, must-revalidate','Pragma': 'no-cache','Expires': '0'}try:requests.get(delete_url, headers=headers)except requests.RequestException as e:print(f"删除操作出错: {e}")def main():while True:value = check_status()if value and value != "No action stored":if value == "UP":print("UP")# 向上tap(1719, 510)time.sleep(3)delete_action()elif value == "DOWN":print("DOWN")# 向下tap(1719, 688)time.sleep(3)delete_action()elif value == "LEFT":print("LEFT")# 向左tap(1626, 606)time.sleep(3)delete_action()elif value == "RIGHT":print("RIGHT")# 向右tap(1800, 596)time.sleep(3)delete_action()elif value == "CLAMP":print("CLAMP")# 夹子tap(1000, 1132)time.sleep(3)delete_action()elif value == "FOOD1":print("FOOD1")# 动作1 上tap(285, 521)time.sleep(3)delete_action()elif value == "FOOD2":print("FOOD2")# 动作2 下tap(290, 704)time.sleep(3)delete_action()elif value == "FOOD3":print("FOOD3")# 动作3 左tap(195, 607)time.sleep(3)delete_action()elif value == "FOOD4":print("FOOD4")# 动作4 右tap(377, 608)time.sleep(3)delete_action()else:print(f"未知动作: {value}")time.sleep(3)if __name__ == "__main__":main()

do.php

<?php
// 定义存储文件路径
$storage_file = 'shared_action.txt';if (isset($_GET['action'])) {file_put_contents($storage_file, $_GET['action']);echo "Action stored: " . htmlspecialchars($_GET['action']);
} elseif (isset($_GET['cmd'])) {$command = strtolower($_GET['cmd']);if ($command === 'status') {if (file_exists($storage_file)) {echo "Current action: " . htmlspecialchars(file_get_contents($storage_file));} else {echo "No action stored";}} elseif ($command === 'delete') {if (file_exists($storage_file)) {unlink($storage_file);}echo "Action deleted successfully";} else {echo "Invalid command";}
} else {// 显示使用说明echo "<h1>Action Management System</h1>";// ... 其余HTML代码 ...
}
?>
http://www.xdnf.cn/news/17093.html

相关文章:

  • [每周一更]-(第154期):Docker 底层深度剖析:掌控 CPU 与内存资源的艺术
  • idea中.xml文件的块注释快捷键
  • Suno的100个高质量歌词元标签(MetaTags)详解与使用指南
  • 网安-逻辑漏洞-23登陆验证
  • 文明存续的时间博弈:论地球资源枯竭临界期的技术突围与行动紧迫性
  • lua中 list.last = last 和list[last]=value区别
  • 悬挂的绳子,它的函数方程是什么样子的?
  • HiveMQ 2024.9 设计与开发文档
  • Android 之 MVVM架构
  • 大语言模型的解码策略:贪婪解码与波束搜索
  • [硬件电路-133]:模拟电路 - 信号处理电路 - 电荷放大器概述、工作原理、常见芯片、管脚定义
  • 使用ASIWebPageRequest库编写Objective-C下载器程序
  • 动感按钮:如何打造交互感十足的点击动画效果
  • Python-初学openCV——图像预处理(五)
  • GitHub 趋势日报 (2025年08月02日)
  • 机器学习第四课之决策树
  • C++-二叉树OJ题
  • 分布式文件系统05-生产级中间件的Java网络通信技术深度优化
  • ubuntu24.04安装selenium、edge、msedgedriver
  • Leetcode 12 java
  • 2.0 vue工程项目的创建
  • C++:STL中的栈和队列的适配器deque
  • 8.1.3 TiDB集群方案雨Replication原理
  • Python批处理深度解析:构建高效大规模数据处理系统
  • Docker--解决x509: certificate signed by unknown authority
  • 创建型设计模式:对象诞生的艺术与智慧
  • Java小红书源码1:1还原uniapp_仿小红书源码
  • 01.MySQL 安装
  • HTTPS的概念和工作过程
  • git配置公钥/密钥