每个android进程有多少内存?

我们可以依靠我们的 Android应用程序获取一定量的内存,还是因手机型号或操作系统版本而有所不同?

例如,我有一个内存缓存,我将其限制设置为5 MB.如果在一个设备上,我的应用程序只能获得8 MB的内存来播放,另外一个是24 MB,我想调整内存缓存的上限以利用或多或少的内存.

有没有办法解决这个问题,数额甚至有所不同?

解决方法

是的,最大堆大小因设备而异.您可以通过调用 getMemoryClass()来检查设备的每个应用程序的近似值.

Returns the approximate per-application memory class of the current device. This gives you an idea of how hard a memory limit you should impose on your application to let the overall system work best. The returned value is in megabytes; the baseline Android memory class is 16 (which happens to be the Java heap limit of those devices); some device with more memory may return 24 or even higher numbers.

更改应用程序堆大小的唯一内置方法是在AndroidManifest.xml中设置android:largeHeap =“true”.这通常会将堆大小从48增加到128.请记住,这种方法只适用于3.x平板电脑.否则,您将需要一个根深蒂固的设备,这显然不是您希望作为开发人员的依据.

相关文章

Android性能优化——之控件的优化 前面讲了图像的优化,接下...
前言 上一篇已经讲了如何实现textView中粗字体效果,里面主要...
最近项目重构,涉及到了数据库和文件下载,发现GreenDao这个...
WebView加载页面的两种方式 一、加载网络页面 加载网络页面,...
给APP全局设置字体主要分为两个方面来介绍 一、给原生界面设...
前言 最近UI大牛出了一版新的效果图,按照IOS的效果做的,页...