android 读取系统文件 wpa_supplicant
1,须要权限
<uses-permission android:name="android.permission.ACCESS_SUPERUSER" />
2,下载 RootTools.jar包。
3。两个关键方法。
主要是获取shell,并运行命令行。
方法例如以下:
private static boolean waitForCommand(Command cmd) {
while (!cmd.isFinished()) {
synchronized (cmd) {
try {
if (!cmd.isFinished()) {
cmd.wait(2000);
}
} catch (InterruptedException e) {
e.printStackTrace();
}
} if (!cmd.isExecuting() && !cmd.isFinished()) {
// Logger.errorST("Error: Command is not executing and is not finished!");
return false;
}
} //Logger.debug("Command Finished!");
return true;
}
public static ArrayList<String> runAndWait1(String cmd, final boolean root) {
final ArrayList<String> output = new ArrayList<String>();
Command cc = new Command(1, cmd) {
@Override
public void commandOutput(int i, String s) {
output.add(s);
// System.out.println("output "+root+s);
} @Override
public void commandTerminated(int i, String s) { System.out.println("error" + root + s); } @Override
public void commandCompleted(int i, int i2) { }
};
try {
RootTools.getShell(root).add(cc);
} catch (Exception e) {
// Logger.errorST("Exception when trying to run shell command", e);
e.printStackTrace();
return null;
} if (!waitForCommand(cc)) {
return null;
} return output;
}
4,接下来就是简单的调用了。
final File f=new File("/data/misc/wifi/wpa_supplicant.conf"); new Thread(){
@Override
public void run() {
super.run();
ArrayList<String> list=new ArrayList<String>();
// String cpath = getCommandLineString(f.getPath());
String s="cat " + f.getPath();
list = runAndWait1(s, true);
for (int i = 0; i < list.size(); i++) {
Log.e("content",list.get(i));
} }
}.start();
输出结果例如以下:
android 读取系统文件 wpa_supplicant的更多相关文章
- Android读取自定义View属性
Android读取自定义View属性 attrs.xml : <?xml version="1.0" encoding="utf-8"?> < ...
- Android读取JSON格式数据
Android读取JSON格式数据 1. 何为JSON? JSON,全称为JavaScript Object Notation,意为JavaScript对象表示法. JSON 是轻量级的文本数据交换格 ...
- Android - 读取JSON文件数据
Android读取JSON文件数据 JSON - JavaScript Object Notation 是一种存储和交换文本信息的语法. JSON对象在花括号中书写.用逗号来分隔值. JSON数组在方 ...
- Android 读取Assets下的资源文件
做Android开发近半年了,东西越学越多,硬盘容量越来越小.很多东西找起来也不方便,为此,我打算从今天起把工作中学到的东西整理起来,写成日记.也希望与广大网友分享我的经验.一同进步.今天主要介绍文件 ...
- Android 读取assets文件下的txt文件
android 读取assets文件下的txt文件,解决了读取txt文件的乱码问题: package com.example.com.scrollview; import java.io.Buffer ...
- Android读取asserts和raw文件夹下的文件
Android读取asserts和raw文件夹下的文件 经常需要用到读取“/res/raw”和"/asserts"文件夹下的文件,索性写成工具类方便以后使用. 一.raw文件夹下的 ...
- MTK Android 读取SIM卡参数,获取sim卡运营商信息
android 获取sim卡运营商信息(转) TelephonyManager tm = (TelephonyManager)Context.getSystemService(Context.TE ...
- Android 读取蓝牙设备信息开发
(1)Android手机一般以客户端的角色主动连接SPP协议设备(接上蓝牙模块的数字传感器),连接流程是: 1.使用registerReceiver注册BroadcastReceiver来获取蓝牙状态 ...
- android 读取sd卡中的图片
一.获取读取SD卡的权限 <!--在SDCard中创建与删除文件权限 --> <uses-permission android:name="android.perm ...
随机推荐
- 启动Apache出现问题:一直停留在启动界面
问题描述: 由于需要php_curl模块,因此直接在php.ini文件将前面的分号去掉 ,但是重启Apache时出现:一直停留在启动界面,Apache无法正常启动,查看错误日志,显示如下: 解决方 ...
- HTML DOM应用案例1
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8&quo ...
- javascript获取年月日
javascript获取年月日代码片段 function getNowDate() { var date = new Date(); var split = "-"; var ye ...
- [转载] Dubbo实现RPC调用使用入门
转载自http://shiyanjun.cn/archives/341.html 使用Dubbo进行远程调用实现服务交互,它支持多种协议,如Hessian.HTTP.RMI.Memcached.Red ...
- 转载:一位资深程序员大牛给予Java初学者的学习路线建议
一位资深程序员大牛给予Java初学者的学习路线建议 java学习这一部分其实也算是今天的重点,这一部分用来回答很多群里的朋友所问过的问题,那就是我你是如何学习Java的,能不能给点建议?今天我是打 ...
- react 体验 react与vue的比较
用了 vue 大半年了,不过我在2016年暑假的时候就看到了 react 这个项目,有点想学习一番,之前学习的都是基础语法和一些基础用法吧,总的来说 mvvm 框架确实都很相似,会一个就可以了; 今天 ...
- Python shutil模块
shutil模块下 copy(复制).rm(删除).move(移动) 常用方法举例. copyfileobj(fsrc, fdst[, length])copyfile(src, dst, *, fo ...
- 初学者没有搞明白的GOROOT,GOPATH,GOBIN,project目录
我们接下来一个一个来看关于Go语言中的三个目录的详细解释先通过go env查看go的环境变量(我这里是mac的环境,所以可能和你的不同) localhost:~ zhaofan$ go env GOA ...
- MyBatis物理分页的代码实现
一.分页 MyBatis有两种分页方法:内存分页,也就是假分页,本质是查出所有的数据然后根据游标的方式,截取需要的记录,如果数据量大,执行效率低,可能造成内存溢出.物理分页,就是数据库本身提供了分页方 ...
- 使用docker搭建Jenkins 及slave的配置
安装Jenkins 使用docker docker run -d -p 8080:8080 -p 50000:50000 -v /opt/jenkins_home:/var/jenkins_home ...