释放双眼,带上耳机,听听看~!
今天,我简单记录getMemoryClass()的使用,之前看到这个,不知道有什么作用,后来在网上查找资料,明白用途了。
Android基本概念: 应用, 任务, 进程, 和线程
开始我们的ActivityManager学习吧!
ActivityManager的内部类:
ActivityManager类对象的获取:
ActivityManager mActivityManager = (ActivityManager)getSystemService(Context.ACTIVITY_SERVICE);
ActivityManager类中的方法:
public intgetLargeMemoryClass ()说明: 如果在AndroidManifest.xml中的标签下将属性android:largeHeap=“true”
这个属性决定你的应用进程是否应当在更大的Dalvik堆中创建,为了在运行时查看可用内存,
可用getLargeMemoryClass()或者 getMemoryClass()
通过代码查看每个进程可用的最大内存,即heapgrowthlimit值:
ActivityManager activityManager = (ActivityManager) context.getSystemService(Context.ACTIVITY_SERVICE);
int memClass = activityManager.getMemoryClass();//64,以m为单位
注意:在设置了heapgrowthlimit的情况下,单个进程可用最大内存为heapgrowthlimit值。在android开发中,如果要使用大堆,需要在manifest中指定android:largeHeap为true,这样dvm heap最大可达heapsize。
其实就是查询手机对于app的最大使用内存,这个可以判断手机的性能,从而确定自己的app该注重性能还是注重内存的使用。
android getMemoryClass()的使用就讲完了、
就这么简单。