2011-07-18 83 views
0

當我按下按鈕時,我想運行另一個單獨的應用程序,但我想以某種方式將這兩個應用程序打包在一起,以便用戶只需要下載一個應用程序。從我的應用程序運行另一個Android應用程序?

我知道開始像這樣的意圖:

Intent intent = new Intent(Intent.ACTION_MAIN); 
intent.setComponent(new ComponentName("com.A.myapp","com.A.myapp.MainActivity")); 
startActivity(intent); 

但是,假設我已經單獨下載該應用程序「com.A.myapp」。將「com.A.myapp」打包​​到我現有的應用程序的最佳方式是什麼?

回答

1

最簡單的方法來做你想做的事情就是簡單地創建一個包含兩個應用程序的新項目。由於應用程序通常由初始條目Activity啓動,因此只要具有相同的根名稱,就可以將它們保存在單獨的程序包中,就像它們現在一樣。所以app1將在包com.A.myapp.myapp1。第二個應用程序「myapp2」將在包com.A.myapp.myapp2

在項目清單文件的Package部分中,將「com.A.myapp」作爲根。註冊整個項目清單文件中的所有活動。然後app1可以用這樣的調用來調用的活動app2

Intent createIntent = new Intent(); 
    createIntent.setClassName(this.getApplicationContext(), "com.A.myapp.myapp2.ActivityA"); 
    startActivity(createIntent); 

注意:這將正式作出這一整個應用程序由於Android關注。如果你想保持它們完全分離,你需要使用意圖過濾器並隱式調用其他應用程序。你可以從這個鏈接開始。

http://developer.android.com/guide/topics/intents/intents-filters.html

+0

謝謝,我會試試這個。 – BinRoot

+0

請參閱我的新編輯。你的應用程序將不再是獨立的,將被視爲一個。如果這不是問題,那麼我之前說過的將會起作用。如果這是一個問題,那麼意圖過濾器和隱式活動調用是您唯一的解決方案。編輯:好的,你正試圖將它們結合起來。是的,讓他們在一個項目中工作。 – DeeV

相關問題