我有一個服務S
,一旦啓動完成就立即開始。我有一個應用程序,其中一個活動,該應用程序啓動時綁定到服務S
。意圖標誌和launchMode
現在我已經註冊了某個事件的廣播接收器,以便如果發生事件,我應該啓動相同的活動。我不希望創建相同活動的另一個實例做,我希望重用活動但onCreate()
或活動的onRestart()
方法應被調用。
我該如何做到這一點?
我有一個服務S
,一旦啓動完成就立即開始。我有一個應用程序,其中一個活動,該應用程序啓動時綁定到服務S
。意圖標誌和launchMode
現在我已經註冊了某個事件的廣播接收器,以便如果發生事件,我應該啓動相同的活動。我不希望創建相同活動的另一個實例做,我希望重用活動但onCreate()
或活動的onRestart()
方法應被調用。
我該如何做到這一點?
我不是100%肯定的你的問題,但在這裏我們去。您可以嘗試在主要活動中使用靜態方法,並從您的服務中調用它。
在您的主要活動:
@Override
public void onCreate() {
super.onCreate();
superAwesomeMethod();
public static void superAwesomeMethod() {
//stuff you want called on onCreate
在您的服務
則:
//event listener capture
YourActivityName.superAwesomeMethod();
試試你AndroidManifest.xml
這個
<activity android:launchMode="singleTop">
您的主要活動
如果你想了解的意圖去
http://blog.akquinet.de/2010/04/15/android-activites-and-tasks-series-intent-flags/
它很清楚,演示應用程序隨之而來,真的很有幫助。
是的,這沒有竅門!謝謝:) – Sunil
你應該接受這個答案,如果它對你有幫助。點擊答案旁邊的綠色複選標記。 –