Android是通过sys伪文件系统中文件来获取手机电池的电量及状态。

路径: /sys/class/power_supply/xxxx/


伪装capacity文件来手动控件电池电量状态, 基本思路是将/sys/class/power_supply/xxxx/作为一个分区的挂载点, 然后在分区创建必要的文件,然后就可以模拟系统低电量状态

#!/system/bin/sh


# create a fake battery level file and copy neccessary file that android use.
touch /data/capacity
echo 50 > /data/capacity
cp /sys/class/power_supply/XXXX/status /data/
cp /sys/class/power_supply/XXXX/temp /data/
cp /sys/class/power_supply/XXXX/health /data/
cp /sys/class/power_supply/XXXX/present /data/
cp /sys/class/power_supply/XXXX/voltage* /data/


# using mount command to get correspond partiton of /data/ directory
# remount partion to /sys/class/power_supply/xxxx
mount -rw -t ext4 /dev/block/mmcblk0pX /sys/class/power_supply/XXXX


# emulate empty battery status need to unplug USB as Android will think it's in charge status when USB plugged.
echo 0 > /data/capacity


更多相关文章

  1. Android(安卓)ConnectivityManager详解
  2. 混淆编译
  3. Android(安卓)N及以上版本应用安装包下载完成自动弹出安装界面的
  4. Android(安卓)studio DDMS无法导入导出文件的问题
  5. [Android(安卓)界面] setContentView和inflate区别
  6. Android(安卓)SDK目录解析以及通用文件
  7. MyEclip1se8.5搭建Android环境
  8. Java.lang.UnsatisfiedLinkError :nativeSetExternalAssetPath错
  9. Android(安卓)组件化

随机推荐

  1. Android(安卓)Preference使用
  2. Android仿印象笔记的自定义菜单控件
  3. 近百个Android开发教程和资料收集整理打
  4. Java大文件上传(Android亦可)
  5. 横竖屏切换时候activity的生命周期?
  6. Android(安卓)Dialog的7种形式
  7. 最受欢迎的文章汇总
  8. Mac下Android(安卓)Studio使用
  9. 我想给你们介绍一个与众不同的Android微
  10. Android之Wifi学习(1)