我是Android开发的初学者。我的应用程序中有几个屏幕,我可以使用“backstack”功能在这些屏幕之间来回导航。当我深入浏览应用程序时,应用程序的内存使用量正在增加。有时它达到100 MB .. !!它会导致应用重启。
据我了解,下面可能是内存过度使用的可能原因:
1)App大量使用图像。
2)实施堆栈。 (只使用过一次活动,其他是碎片)
3)有一个后台服务连续运行该应用程序。
我不确定这些是否是实际原因。请帮我找出原因。有关内存过度使用问题的任何提示?还有一个问题,Android应用程序的理想内存使用情况应该是什么?
答案 0 :(得分:0)
在你的应用程序中调用这两个方法它将从android数据中删除所有图像缓存,你的应用程序不会从内存问题中崩溃
//this is for clear cache folder in android -> data folder which generate by gallry lazy loading
public static void trimCache(Context context) {
try {
// File dir = context.getCacheDir();
File dir = context.getExternalCacheDir();
if (dir != null && dir.isDirectory()) {
deleteDir(dir);
System.out.println("delete cache folderrrrrrrrrr");
}
} catch (Exception e) {
// TODO: handle exception
}
}
public static void trimCacheinternal(Context context) {
try {
File dir = context.getCacheDir();
// File dir = context.getExternalCacheDir();
if (dir != null && dir.isDirectory()) {
deleteDir(dir);
System.out.println("delete cache folderrrrrrrrrr");
}
} catch (Exception e) {
// TODO: handle exception
}
}