2011-08-11 131 views
0

我在服務中工作,在設備啓動時,我的服務隨應用程序一起啓動。 現在,如果服務發現一些受限制的應用程序啓動,它會爲我的應用程序提供背景,顯示回家,殺死應用程序,並重新開始活動到前臺。但它在啓動啓動時創建了多個實例。如何避免從服務開始的多個活動實例

我想,如果它存在,每次啓動之前啓動的活動中,我使用下面的代碼:

//activity to background  
    Intent startMain = new Intent(Intent.ACTION_MAIN); 
    startMain.addCategory(Intent.CATEGORY_HOME); 
    startMain.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    startActivity(startMain); 

    //killing restricted app  
    Appmgr.killBackgroundProcesses(RunningP.processName); 

    //again start activity  
    Intent intent = new Intent(); 
    intent.setAction(Intent.ACTION_MAIN); 
    intent.addCategory(Intent.CATEGORY_LAUNCHER); 
    intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
    ComponentName cn = new ComponentName(this, TaxiPlexer.class); 
    intent.setComponent(cn); 
    startActivity(intent); 

我已經使用FLAG_ACTIVITY_LAUNCHED_FROM_HISTORY和其他人,但他們給我強制關閉錯誤。上面的代碼僅創建多個實例在引導

+0

做出意向對象的靜態和最終 – Pratik

回答

0

添加此體現:

<activity android:name="yourActivity" launchMode = "singleTask" ></activity> 
相關問題