2012-02-16 25 views
3

主要活動是有可能在Android中創建兩個入口點的應用,我的意思是可以我可以切換主活動programitically如何改變Android的programitically

+0

這是由具有入口點,只是決定做兩件事情可能有什麼不同? – Thilo 2012-02-16 07:29:57

回答

1

檢查下面這一個

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_LAUNCHER); 
intent.setComponent(new ComponentName(packageName,mainActivity)); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
ctx.startActivity(intent); 
0

如果你談論的是從啓動其他應用程式,應用程序就可以將其代碼:

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.addCategory(Intent.CATEGORY_LAUNCHER); 
intent.setComponent(new ComponentName(packageName,mainActivity)); 
intent.setFlags(Intent.FLAG_ACTIVITY_NEW_TASK); 
ctx.startActivity(intent); 
1

我認爲你是在談論基於一些事件開展活動的決定,那麼你需要通過點擊應用程序圖標啓動程序,如果你想添加一個廣播接收器,像啓動Activity1。然後將意圖過濾器添加到此活動Action_MAIN和ACTION_LAUNCHER,如果要在電話啓動時啓動Activity2,請將過濾器添加到此活動BOOT_COMPLETED。

3

每個導出的活動是您的應用程序的潛在切入點;一個外國應用程序可以啓動任何一個意圖。 (一個意圖過濾器帶有一個隱含的android:export。)然而,你可以只有一個入口點,啓動器會尊重。爲了模擬第二發起點,無論是

  1. 提供一個完全獨立的應用程序與啓動導出的活動之一,或

  2. 給你的「推出」活動立即啓動的唯一目的的目的基於某種邏輯的一種或另一種活動(保存的偏好,月相計算,任何事物)。

+0

+1。我會隨時選擇選項2。 – josephus 2012-02-16 08:46:53