Android系统app内存基础常识

我们知道android 中每个app的内存占用,简单分为两块:dalvik heap和native heap。

native heap 是C/C++代码占用内存,而dalvik heap则是java代码占用内存。

而android系统对每个app内存分配(java 占用)有大小限制,每个操作系统及在不同手机厂商中设置此值均有不同。

 ActivityManager activityManager = (ActivityManager) getSystemService(ACTIVITY_SERVICE);

 int size = activityManager.getMemoryClass();

 这个值单位为MB,从16开始,比如vivo x7 plus 此值为256M。mi4为128M。

如果app启动后,系统并非立刻分配如此大的内存,而是根据实际需要。如果app本身占用内存小,则os分配的内存较小,如50M等。


如果app启动后,已占用内存+需要再分配内存 大于上面这个值。则会出现oom问题。


同一个图片,在不同手机上同样方式加载,可能占用内存是不同的。可能还有较大的差距。





评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值