几个月来,我正在为Android创建一个应用程序,我遇到了一个无法解决的问题:我的应用程序在使用几分钟后意外崩溃。感谢Android Studio的“内存监视器”,我可以看到我的应用程序随着时间的推移使用越来越多的内存:当我更改活动时,内存使用量会增加但不会减少,这会导致在分配给任何内存时停止我的应用程序它被使用(256 MB)。
您是否有解决方案确保使用的内存不再随着时间的推移而稳定增加,就像已经腾空的活动继续使用内存一样?
这是内存监视器的屏幕截图,红色箭头上升的阶段对应于各种活动的启动。蓝色箭头表示应用程序意外离开的时间。
答案 0 :(得分:2)
启动新Activity时,请设置其Intent标志,如下所示:
Intent intent = new Intent(...);
intent .setFlags(intent .getFlags() | Intent.FLAG_ACTIVITY_NO_HISTORY);
startActivity(i);
或将android:noHistory="true"
添加到清单中您的活动设置中。
这样就强制将活动添加到历史堆栈中。
你也可以在onDestory
清理你的记忆,看看这个链接: