我創建了一個Android應用程序有一個活動和包名"com.explore"
Android應用程序比。流程
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
我運行ps命令。
USER PID PPID VSIZE RSS WCHAN PC NAME
app_137 2974 91 478604 48524 ffffffff 00000000 S com.explore
我按下後退按鈕。我退出應用程序並進入主屏幕 現在再次運行ps命令。
USER PID PPID VSIZE RSS WCHAN PC NAME
app_137 2974 91 472428 42572 ffffffff 00000000 S com.explore
進程2974仍在運行。有人能解釋我的行爲嗎?這是內存使用情況,狀態或進程將持續多久?我應該在按下後從我的代碼中殺死進程嗎?如何優雅地殺死進程?
我認爲你應該問自己的問題是:你爲什麼要殺死你的應用程序? Android非常擅長管理前臺和後臺進程。它會在用戶請求或內存不足時終止進程。 – Eric
其實我想了解Android架構中的流程管理。我只是發現了這種行爲。在檢查之前,我相信「每個進程都有自己的進程ID,當用戶退出應用程序時進程會被終止,下一次重新啓動時會得到新的進程ID。」但是現在我發現「進程繼續運行,即使用戶退出應用程序。下一次重新啓動時,它會得到相同的進程ID。」 –