2015-04-04 50 views
0

我有大量的位图,媒体播放器,声音库和对象的表面视图。有没有办法从内存中卸载所有内容并返回到第一个活动,如重新启动应用程序?杀死表面视图

手动执行此操作并循环播放每个位图,释放mediaplayer和清零对象听起来像很多工作,需要一些方法来重新启动应用程序并卸载应用程序放置在内存中的所有内容,而不会导致内存泄漏。

我试过用finish();但只关闭活动,它不会卸载像mediaplayer和位图这样的东西,因此它可能导致内存泄漏,并且它也不会停止surfaceview。

回答

0
+0

我已经这样做了,那我的问题的答案如何? – SpoocyCrep 2015-04-04 19:28:34

+0

我在想,像OnDestroy()方法中的OnDestroy()方法调用线程的OnDestroy()方法,并在线程的OnDestroy()方法中释放mediaplayer。 – Journey 2015-04-04 20:10:05

+0

多数民众赞成手动这样做,我不希望这样,我找到了一种方法来做到这一点与一个命令,虐待即将发布的答案。 – SpoocyCrep 2015-04-04 21:10:05

1

什么对我来说是简单地写System.exit(0);工作,这只是关闭了surfaceview,又回到在MainActivity,它也停止了mediaplayers和清理一切从内存。我不确定它是否是最好的解决方案,或者是否应该使用它,但它似乎为我完成了这项工作。