一 背景

    朋友请我帮他实现一个小功能:安卓手机定时循环开关飞行模式(目的是为了保持网络活性)

    以下是pass掉的方案:

  • 打包成系统app,必须有安卓系统签名,再怎么花里胡哨(如放到/system/app/下等)都绕不开签名。
  • 手机root,无论是发广播还是android code直接runtime.exec,都离不开root权限。但考虑到他提供的样机都不好root,刷机的形式很不走量,他的十几部手机不可能给他挨个刷了。
  • 用传统广播或者api的形式,已经不可用,传统流氓api都是安卓4以前了,现在的安卓安全性越来越高。样机是安卓10,目前市场已经是安卓11。

    最后发现朋友要求也没太苛刻,他要用这个功能的时候,只是某个特定的时间段,而且旁边会有一台windows电脑。手机也可以用usb连接电脑。这就好办很多了。

    某个特定时间段,说明不需要开机启动+保活+不能卸载;有windows电脑且可以连接usb说明我们可以用adb来发送命令(且可以不用wifi连接,那么脚本更容易编写了)

二 windows下安装adb

    本人是用的android studio自带的adb工具+配置环境变量。

    若非安卓开发人员请自行百度。

    最后需要能在cmd中输入adb得到相关信息才表示安装成功。

C:\Users\lrj>adb
Android Debug Bridge version 1.0.41
Version 31.0.2-7242960
Installed as C:\Users\lrj\AppData\Local\Android\Sdk\platform-tools\adb.exe

三 adb调试飞行模式

    首先把样机的开发者模式打开(不同的记性不一样,大多都是关于本机-安卓版本,连击10次)

    usb连接电脑和手机,手机弹窗相关都点击确认(密钥获取,打开调试,文件传输模式等)

    打开cmd分别输入以下两行命令,观察对应的样机是否相应的开启\关闭飞行模式,如果是则说明调试成功。

C:\Users\lrj>adb shell settings put global airplane_mode_on 1C:\Users\lrj>adb shell settings put global airplane_mode_on 0

四 编写bat脚本

    原本可以写个简单的开关命令,然后利用windows计划任务来实现循环+定时功能。后来发现windows的计划任务没有linux的那么精确,最小单位是一天。 而我是想实现秒级的可控可设置的功能,所以还是多写几行吧。

@echo off
@echo=
@echo Lu Renjia, welcome!
@echo=
@echo=
set /p a=Please input the duration of flight mode(s):
set /p b=Please enter the flight mode interval(s)::start
adb shell settings put global airplane_mode_on 1
@echo %date% %time:~0,8% plan on
@ping -n %a% 127.1 >nul
adb shell settings put global airplane_mode_on 0
@echo %date% %time:~0,8% plan off
choice /t %b% /d y /n >nulgoto start

    echo off是回文展示;

    set /p是输入变量

    :start choice goto start是循环定时

    echo %date%是展示当前时间及相关精度

    @ping那一行相当于linux的sleep

    adb那两行分别对应开启/关闭飞行模式

windows之bat脚本控制adb命令实现:安卓手机定时循环开关飞行模式相关推荐

  1. adb connect 连不上_使用ADB命令卸载安卓手机系统软件

    有句话怎么说的?哦,是这样说的:"我就喜欢看你想干掉我却又干不掉我的样子!"当你买了一部安卓手机,发现手机上塞满了各种你根本不想要也用不着却又卸载不了的软件,心中难免万" ...

  2. android adb查看摄像头信息,用ADB命令查看安卓手机信息参数(很有用)

    1.下载htc sync同步软件:请自行到官网下载 (安装到电脑中连接手机选择 htc sync模式) 2.下载ADB(提取自htc sync):  adb.zip(下载地址) (解压得到三文件全部复 ...

  3. mark:adb命令读取安卓手机文件安装apk获取运行日志

    一.预置条件 二.adb命令行查询文件夹 1.adb devices查询链接设备列表 2.adb -s RFCNC0V712R shell 打开shell 找到文件路径后记录下来,使用pull命名获取 ...

  4. 使用adb命令给安卓手机安装apk包

    安装之前用adb devices命令查看下手机是否连接成功 adb devices 输入命令后如果显示如下,则表示已连接 (base) jiangxin@jiangxinxindeMacBook-Pr ...

  5. android安装应用程序的命令,使用adb命令给安卓手机安装软件

    adb是安卓的一个很好的调试工具,可以实现很多功能,今天就讲解一个简单的功能:使用adb命令安装软件. 手机助手等程序为手机安装软件时其实就是用的adb工具,自己用adb工具为手机安装软件更加简单快捷 ...

  6. Python利用adb命令操作安卓手机批量打电话

    python版本3.7 编辑器 pycharm 电脑配置完成adb adb 官网下载:http://adbshell.com/upload/adb.zip 数据线连接手机,并打开usb调试,勾选usb ...

  7. Windows下bat脚本(cmd命令学习)

    怎么创建bat文件? ①使用copy con 文件名 这样既可在黑窗口里面书写bat命令,然后写完后按ctrl+z结束编辑 ②使用edit来创建(很古老已不用) ③使用记事本,改扩展名为bat(现在几 ...

  8. bat脚本 获取copy命令结果

    在Windows系统中,可以使用BAT脚本获取COPY命令的结果.可以在BAT脚本中使用以下语句来实现: for /f "tokens=*" %i in ('copy source ...

  9. windows 使用bat脚本文件,复制文件夹到另一个盘

    实现windows 使用bat脚本文件,复制文件夹到另一个盘,参考如下代码:/y是可以不显示:提示你需要覆盖一个文件,如下图: @echo off echo "使用bat脚本来复制文件夹和文 ...

最新文章

  1. 为你的集成需求选择合适的ESB
  2. 正则表达式 特殊符号系列 通配符系列
  3. 《Windows via C/C++》学习笔记 —— “线程同步”之“检测死锁”
  4. 前后端交互json字符串
  5. 需求获取的三阶段:需求背景、需求调研、需求分析 (2)
  6. vmware的vmnet-概念的解说
  7. CCF201812-2 小明放学
  8. POJ-1681 Painter's Problem 高消
  9. 网络工程计算机等级,网络工程师题库_计算机等级考试题库_考试资料网
  10. Java 正则表达式的用法与实例
  11. 【数据库】SQL中的rollup() 函数的作用?
  12. 2022年编程语言排名,官方数据来了,让人大开眼界
  13. 腾讯云轻量应用服务器地域节点北京、上海和广州选择攻略
  14. 服务器搭建织梦cms系统,零基础使用织梦cms搭建自己的网站「织梦建站」
  15. 全球一月内两次遭到病毒暴击 2017网络安全生态峰会或有解药
  16. 谢烟客---------Linux之文件系统管理挂载
  17. WIN32 opengl绘制一个点
  18. JDBC之CallableStatement执行存储过程
  19. spring-bean
  20. 使用Amazon SNS,发邮件

热门文章

  1. html实现三角形树状图,图解利用CSS实现三角形
  2. 2018年秋招笔试面试---小学渣求职历险记(深圳篇)
  3. idea自动补全对象或方法返回的对象
  4. PPT:很多文字如何排版?(PPT如何美化?)
  5. 在sqlyog进行数据库的备份_MYSQL数据库备份与恢复(收藏)
  6. IDEA2021.1版本安装教程
  7. pdf.js实现多个不同词的高亮显示
  8. yum卸载rpm安装的软件包
  9. isblank java_判空我推荐StringUtils.isBlank
  10. nginx配置详解,完全卸载nginx, nginx https配置