android 通过adb命令控制wifi开关

2017年08月23日 17:47:46 刘国栋 阅读数:14598

版权声明:本文为博主原创文章,转载请声明文章出处。 https://blog.csdn.net/liu3364575/article/details/77509038

手机必须root

public static void setSettingsWifi() {  ShellUtil.runRootCmd("svc wifi enable");
}
package com.watch.in.uitlis.data;/**
 * Created by Administrator on 2017/6/21.
 */

import android.util.Log;import java.io.DataOutputStream;
import java.io.IOException;
import java.io.InputStream;
import java.io.OutputStream;public class ShellUtil
{private static String TAG = ShellUtil.class.getName();public static String runCommand(String command){Process process = null;String result = "false";try{process = Runtime.getRuntime().exec(command);process.waitFor();result = inputStreamToString(process.getInputStream());Log.e(TAG, result);} catch (Exception e){return result;} finally{try{process.destroy();} catch (Exception e){}}return result;}//http://blog.csdn.net/alexander_xfl/article/details/9150971//command can be some cmd, use ; to splitpublic static String runRootCmd(String command){return runRootCmd(command,  ";");}public static String runRootCmd(String command, String split){Process process = null;DataOutputStream os = null;String result = "false";try{process = Runtime.getRuntime().exec("su");OutputStream outstream = process.getOutputStream();DataOutputStream dataOutputStream = new DataOutputStream(outstream);String temp = "";String[] cmds = command.split(split);for(int i = 0; i < cmds.length; i++)temp += cmds[i] + "\n";dataOutputStream.writeBytes(temp);dataOutputStream.flush();dataOutputStream.writeBytes("exit\n");dataOutputStream.flush();process.waitFor();result = inputStreamToString(process.getInputStream());Log.i(TAG, temp);} catch (Exception e){Log.e(TAG, e.getMessage());return result;} finally{Log.i(TAG, result);try{if (os != null){os.close();}process.destroy();} catch (Exception e){Log.e(TAG, e.getMessage());}}return result;}private static String inputStreamToString(InputStream in) throws IOException{StringBuffer out = new StringBuffer();byte[] b = new byte[1024];for (int n; (n = in.read(b)) != -1;){out.append(new String(b, 0, n));}return out.toString();}
}
<!-- wifi设置模块相关权限条 -->
<!-- 以下是使用wifi访问网络所需的权限 -->
<uses-permission android:name="android.permission.CHANGE_NETWORK_STATE" />
<uses-permission android:name="android.permission.CHANGE_WIFI_STATE" />
<uses-permission android:name="android.permission.ACCESS_NETWORK_STATE" />
<uses-permission android:name="android.permission.ACCESS_WIFI_STATE" />
<uses-permission android:name="android.permission.WAKE_LOCK" />
<uses-permission android:name="android.permission.UPDATE_DEVICE_STATS" />
<uses-permission android:name="android.permission.INTERNET" />
<uses-permission android:name="android.permission.RECEIVE_BOOT_COMPLETED" />
<uses-permission android:name="android.permission.MODIFY_PHONE_STATE" />
<uses-permission android:name="android.permission.WRITE_SETTINGS" />
权限挑有用的就行

android 通过adb命令控制wifi开关相关推荐

  1. Android 常见adb命令

    Android 常见adb命令 by:授客 QQ:1033553122 1.  查看所有已链接的设备 命令: adb devices   例: C:\Users\laiyu>adb device ...

  2. adb命令:WIFI连接设备

    1 查找当前设备是否存在包名为com.fuxi.calendar的apk,找到其安装路径 D:\ProjectSpace\Calendar>adb shell pm path com.fuxi. ...

  3. adb命令设置wifi上网

    http://www.xuebuyuan.com/2106429.html 转自 adb命令设置wifi上网 2014年09月05日 ⁄ 综合 ⁄ 共 5025字 ⁄ 字号 小 中 大 ⁄ 评论关闭 ...

  4. 移动测试基础 Android 常用 adb 命令总结

    https://testerhome.com/topics/2565 Android 常用 adb 命令总结 针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常用的 adb ...

  5. android查看cpu信息,Android使用adb命令查看CPU信息

    Android中使用JNI编程的时候会需要编译出不同的SO文件,以供适配不同的机型. 例如: 由此需要查看不同机型的CPU信息. 使用ADB命令查看CPU信息命令如下: 1. adb shell 2. ...

  6. 使用adb命令控制Android

    adb shell input text hello //把hello这个内容传到有焦点的EditText之类的控件上 adb shell input keyevent 3 //相当于按下home键, ...

  7. 树莓派(二) adb命令控制手机拨打/接听电话

    实验场景: 将手机通过数据线与树莓派相连,使用终端命令查看是否已经连接上,若成功则显示: # 查看adb命令连接的设备 adb devices# 若成功连接则再次运行显示 List of device ...

  8. Android app ADB命令

    * 查看设备 adb devices ps这个命令是查看当前连接的设备, 连接到计算机的android设备或者模拟器将会列出显示 若有多台安卓设备,可以通过在adb后面加上 -s <设备id&g ...

  9. (转)Android 常用 adb 命令总结

    转载地址:https://www.cnblogs.com/bravesnail/articles/5850335.html 针对移动端 Android 的测试, adb 命令是很重要的一个点,必须将常 ...

最新文章

  1. 【前端开发与项目管理】
  2. 微信小程序-04-详解介绍.json 配置文件
  3. java抽象类到底能不能够实例化?
  4. mysql replication 配置_MySQL Replication配置主从的教程
  5. ubuntu linux下建立stm32开发环境: 程序烧录 openocd+openjtag
  6. Bzoj 4371: [IOI2015]sorting排序 二分
  7. 快逸报表传递中文参数乱码解决
  8. 原生js实现网站倒计时效果 给网站添加一个活动倒计时效果 线报活动结束提示效果
  9. mybatis mapper xml的学习详解
  10. html如何居中svg,垂直居中SVG标签
  11. 建设工程施工合同系列一建工合同的范围(未完待续)
  12. python绘制太阳花_Python绘制蟒蛇和太阳花
  13. 什么叫单精度浮点型?什么叫双精度浮点型?
  14. Linux抢占式调度简介(转)
  15. 计算机盘有百度云盘怎么删除文件,百度网盘的群内分享文件可以删除吗
  16. 12-11 网易实习一面
  17. linux 限速命令,linux 路由器限速实现方法
  18. 算法岗面经总结(京东)
  19. 获取MAC OS苹果电脑配置信息,发送到企业微信机器人自动提醒
  20. win10安装sshpass_Windows上SSH服务器的配置以及客户端的连接

热门文章

  1. 计算机应用基础在线3,《计算机应用基础》第3阶段在线作业3.docx
  2. 京东/淘宝的手机销售榜(前4名 -- 手机品牌 --手机型号*3 --手机分辨率 -- 手机操作系统 --安卓版本号)...
  3. Android 巧用 flexboxLayout 布局
  4. oracle数据库应用(2)
  5. SEM代码篇----R详细实现(SEM 2)
  6. python pd Series 添加行_pd.Series的基本操作
  7. EAUML日拱一卒--序列图(Sequence Diagram)::生命周期
  8. AndroMDA Getting started(七)
  9. 企鹅号快速赚钱方法?企鹅号收益情况?
  10. 计算机分盘的时候c盘留多少,电脑分盘c盘多大合适