安卓电量读取
2015-07-30 16:35
316 查看
试了下51testing上的方法是各种报错啊,google官方提供的python也报错
最后没有办法只有自己解析了http://blog.csdn.net/oujunli/article/details/37563067 这是官方的方法不知道你们能不能用
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
public class Battert {
public static void readTxtFile(String filePath,String pac){
try {
String encoding="GBK";
File file=new File(filePath);
if(file.isFile() && file.exists()){ //判断文件是否存在
InputStreamReader read = new InputStreamReader(
new FileInputStream(file),encoding);//考虑到编码格式
BufferedReader bufferedReader = new BufferedReader(read);
String lineTxt = null;
String uid=null;
while((lineTxt = bufferedReader.readLine()) != null){
//System.out.println(lineTxt);
if (lineTxt.contains(pac)&&lineTxt.contains("proc")){
lineTxt=lineTxt.split("=")[1].split(":")[0];
uid=lineTxt;
System.out.println("取得UId为"+uid);
}
if (lineTxt.contains("Uid")&&lineTxt.contains(uid)){
lineTxt=lineTxt.split(":")[1];
System.out.println(pac+"取得耗电量为"+lineTxt+"毫安时");
}
}
read.close();
}else{
System.out.println("找不到指定的文件");
}
} catch (Exception e) {
System.out.println("读取文件内容出错");
e.printStackTrace();
}
}
public static void main(String[] args){
//需要先使用adb shell dumpsys batterystats --reset 初始化操作
//使用一段时间后adb shell dumpsys batterystats > xxx.txt 得到一个txt
//拿这个txt来进行结果分析,建议使用对比 具体数据可能无太大参考意义
String filePath = "E:\\download\\battery-historian-master\\xxx.txt";
String pac="tiange.ktv.assistant";
readTxtFile(filePath,pac);
}
}
最后没有办法只有自己解析了http://blog.csdn.net/oujunli/article/details/37563067 这是官方的方法不知道你们能不能用
import java.io.BufferedReader;
import java.io.File;
import java.io.FileInputStream;
import java.io.InputStreamReader;
public class Battert {
public static void readTxtFile(String filePath,String pac){
try {
String encoding="GBK";
File file=new File(filePath);
if(file.isFile() && file.exists()){ //判断文件是否存在
InputStreamReader read = new InputStreamReader(
new FileInputStream(file),encoding);//考虑到编码格式
BufferedReader bufferedReader = new BufferedReader(read);
String lineTxt = null;
String uid=null;
while((lineTxt = bufferedReader.readLine()) != null){
//System.out.println(lineTxt);
if (lineTxt.contains(pac)&&lineTxt.contains("proc")){
lineTxt=lineTxt.split("=")[1].split(":")[0];
uid=lineTxt;
System.out.println("取得UId为"+uid);
}
if (lineTxt.contains("Uid")&&lineTxt.contains(uid)){
lineTxt=lineTxt.split(":")[1];
System.out.println(pac+"取得耗电量为"+lineTxt+"毫安时");
}
}
read.close();
}else{
System.out.println("找不到指定的文件");
}
} catch (Exception e) {
System.out.println("读取文件内容出错");
e.printStackTrace();
}
}
public static void main(String[] args){
//需要先使用adb shell dumpsys batterystats --reset 初始化操作
//使用一段时间后adb shell dumpsys batterystats > xxx.txt 得到一个txt
//拿这个txt来进行结果分析,建议使用对比 具体数据可能无太大参考意义
String filePath = "E:\\download\\battery-historian-master\\xxx.txt";
String pac="tiange.ktv.assistant";
readTxtFile(filePath,pac);
}
}
相关文章推荐
- 关于nginx的1W并发的优化
- 页面滑动悬停在某个控件(两种做法)
- 2015 年最棒的 5 个 HTML5 框架(转)
- 程序员的恋情
- .NET破解之google瓦片下载及拼接
- Scala 中 构造函数,重载函数的执行顺序
- Android安全研究经验谈
- ssh centos中文乱码
- spring中PropertyPlaceholderConfigurer的使用
- 详解Spring MVC 4常用的那些注解
- 【BZOJ 3679】数字之积
- Python 3 中检测QQ在线的脚本
- hdu杭电2199 Can you solve this equation?【二分】
- android 获取 imei号码
- ViewPager+Fragment再探:和TAB滑动条一起三者结合
- pascal矩阵
- Python的getattr(),setattr(),delattr(),hasattr()及类内建__getattr__应用
- 关于sublime代码格式化
- 杭电2141Can you find it?
- Java中list用法