Android存储空间不足
来源:互联网 发布:互动投影软件注册机 编辑:程序博客网 时间:2024/04/28 18:11
“存储空间不足”data过小的通知分析DeviceStorageMonitorService类
位置
DeviceStorageMonitorService.java (frameworks\base\services\java\com\android\server\)
一. 三个关键变量:
private static final int DEFAULT_THRESHOLD_PERCENTAGE = 10;private static final int DEFAULT_FULL_THRESHOLD_BYTES = 1*1024*1024; // 1MBprivate static final long DEFAULT_DISK_FREE_CHANGE_REPORTING_THRESHOLD = 2 * 1024 * 1024; // 2MB
二. 参数调用的地方
在整个android目录中, 三个常量被调用的地方, 都只是在DeviceStorageMonitorService.java中
DEFAULT_THRESHOLD_PERCENTAGE(10) : private long getMemThreshold();return 1300234 * 10 = 13,002,340DEFAULT_FULL_THRESHOLD_BYTES(10M) : private int getMemFullThreshold()return 10,485,760DEFAULT_DISK_FREE_CHANGE_REPORTING_THRESHOLD(5M=5,242,880) : private final void restatDataDir();threshold = 5,242,880 delta = mFreeMem = 101,482,696
三. 函数被调用的地方
DeviceStorageMonitorService构造中
private long mMemLowThreshold = getMemThreshold();
四. DeviceStorageMonitorService的调用追踪
private final void checkMemory(boolean checkCache) -> 判断() ->private final void sendNotification()
在sendNotification()中将剩余内存的值存入intent中, 然后广播出去, 广播类型为ACTION_MANAGE_PACKAGE_STORAGE
此通知的标题为 “存储空间不足(Low on space)”
通知的内容为 “手机内存空间所剩不多了(Phone storage space is getting low)”
五. DEFAULT_FULL_THRESHOLD_BYTES的调用追踪
private final void checkMemory(boolean checkCache) -> 判断() ->private final void sendFullNotification() ->sendStickyBroadcast(intent.ACTION_DEVICE_STORAGE_FULL)
若data目录小于DEFAULT_FULL_THRESHOLD_BYTES, 则不在接收短信.
六. DEFAULT_DISK_FREE_CHANGE_REPORTING_THRESHOLD 调用追踪
private final void checkMemory(boolean checkCache) ->EventLog.writeEvent(EventLogTags.FREE_STORAGE_CHANGED, mFreeMem)
经过jwisp烧录到真机上发现, 真正有可能有用的是百分比报警, 那只需要设置下面这个参数即可:
DEFAULT_THRESHOLD_PERCENTAGE
- Android存储空间不足
- Android存储空间不足下,APP出现奔溃等情况
- WebLogic存储空间不足
- E60的存储空间不足? NO
- 关于“存储空间不足”的问题
- matlab2013 安装 存储空间不足 解决方案
- Win7系统存储空间不足怎么办?
- Eclipse在开发android应用的时候出现存储空间不足而无法安装apk的错误
- android存储空间
- 服务器存储空间不足,无法处理此命令
- IIS无法启动:存储空间不足解决办法
- 解决 VS2010 存储空间不足,无法处理命令
- VS2010 提示存储空间不足 无法操作
- 如何检查Linux存储空间不足情况
- Win7存储空间不足怎么办?Win7存储空间不足的两种解决方法
- Android存储空间——外部存储空间和内部存储空间
- android存储空间的检测
- android检查存储空间小结
- struts 调用流程
- R.layout.main R.id.lv莫名报错
- 想写一本关于软件开发的书
- Android NDK开发轻松入门
- shell学习笔记
- Android存储空间不足
- 一些个人感悟(转)
- POJ 1010 1020 DFS+剪枝
- hrbust oj 1189、线段树初探 简单应用之区间最大值、
- 感悟、资产和幸福感(转)
- 网络编程
- ThreadLocal的使用
- yum 无法使用解决方法
- 计算机游戏编程技巧