首页 > 代码库 > Android手机如何获取power_profile.xml文件

Android手机如何获取power_profile.xml文件

       最近在做关于能耗方面的测试,看了一个月时间的论文,终于找到了一些新的思路,但是一个问题出现了,以至于

工作无法再进行下去。

       在Android手机中,对于手机中的每个部件(cpu、led、gps、3g等等)运行时对应的能耗值都放power_profile.xml

文件中,而且系统的 设置-->电池-->使用情况中,统计的能耗的使用情况也是以power_profile.xml的value作为基础参数

的。Android手机如何获取power_profile.xml文件呢?接下来我们会详细介绍该问题的解决方法:

       google官网对于power_profile.xml文件的介绍:http://source.android.com/devices/tech/power.html

步棸1:进入Android手机系统根目录,找到System文件并打开文件,找到framework文件并打开,找到framework-res.apk文件(/system/framework/framework-res.apk)。

步棸2:利用apktool工具将framework-res.apk反编译。

             1.下载apktool。http://code.google.com/p/android-apktool/downloads/list


             2.解压下载项,文件目录结构如图所示。


             3.命令行执行apktool d E:\power_profile\framework-res.apk E:\power_profile\framework-res


步棸3:反编译后文件目录如下所示,power_profile----framework-res-----res----xml----power_profile.xml

我手机中的power_profile.xml文件如下所示(小米2s):

<?xml version="1.0" encoding="utf-8"?>
<device name="Android">
    <item name="none">0</item>
    <item name="screen.on">100</item>
    <item name="bluetooth.active">142</item>
    <item name="bluetooth.on">0.3</item>
    <item name="bluetooth.at">35690</item>
    <item name="screen.full">160</item>
    <item name="wifi.on">4</item>
    <item name="wifi.active">120</item>
    <item name="wifi.scan">220</item>
    <item name="dsp.audio">88</item>
    <item name="dsp.video">88</item>
    <item name="radio.active">300</item>
    <item name="gps.on">170</item>
    <item name="battery.capacity">1390</item>
    <item name="radio.scanning">70</item>
    <array name="radio.on">
        <value>3</value>
        <value>3</value>
    </array>
    <array name="cpu.speeds">
        <value>192000</value>
        <value>384000</value>
        <value>432000</value>
        <value>486000</value>
        <value>540000</value>
        <value>594000</value>
        <value>648000</value>
        <value>702000</value>
        <value>756000</value>
        <value>810000</value>
        <value>864000</value>
        <value>918000</value>
        <value>972000</value>
        <value>1026000</value>
        <value>1080000</value>
        <value>1134000</value>
        <value>1188000</value>
    </array>
    <item name="cpu.idle">2.8</item>
    <array name="cpu.active">
        <value>66.6</value>
        <value>84</value>
        <value>90.8</value>
        <value>96</value>
        <value>105</value>
        <value>111.5</value>
        <value>117.3</value>
        <value>123.6</value>
        <value>134.5</value>
        <value>141.8</value>
        <value>148.5</value>
        <value>168.4</value>
        <value>168.4</value>
        <value>168.4</value>
        <value>168.4</value>
        <value>168.4</value>
        <value>168.4</value>
    </array>
</device>