2015-04-04 49 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和清理一切從內存。我不確定它是否是最好的解決方案,或者是否應該使用它,但它似乎爲我完成了這項工作。