2011-10-06 43 views
9

當應用程序請求終止時,我試圖從代碼中調用ANativeActivity_finish(state-> activity)。這工作,但我的應用程序無法重新啓動,它體現在logcat的以下內容:如何以編程方式終止android NDK(原生活動)應用程序?

W/ActivityManager( 238): Duplicate finish request for HistoryRecord 

似乎一切都正常工作,當用戶點擊後退按鈕時,不過,我需要能夠從內部發出exit命令我的應用程序。任何建議?

回答

4

就是這樣。我不知道你是怎麼做的,我想你會在代碼的最後做這個調用,然後從android_main中返回。

你必須ANativeActivity_finish()並繼續事件循環,直到android_app->destroyRequested。在您的活動處理程序中,您會找到相應的APP_CMD_STOPAPP_CMD_DESTROY

這樣做,現在我沒有問題。我以前用exit(0)來做,但那不是正確的。

相關問題