2012-10-15 59 views
4

我有兩個廣播接收器的應用程序,其中一個接收數據,另一個發送它。我已經看到他們有一個屬性android:process讓它們運行在應用程序的默認進程或另一個進程中。在我使用google發現的例子中,接收器被設置爲在「:remote」過程中運行。Android BroadcastReceiver:在默認進程或新的進程中運行它?

我的問題是,使用每個選項有哪些優缺點?

回答

2

當您想與其他應用程序共享資源時,使用與默認應用程序不同的進程很方便。

待辦事項,所以你需要安排兩個具有相同進程名的應用程序,如果你的進程名以lowerchar開頭,則會產生一個全局進程。如果它以冒號開頭:比進程是私有的。 請記住,要在兩個應用程序之間共享流程,您需要相同的用戶ID和相同的應用程序證書。

您還必須只加載一次ressources並獲得內存消耗的好處。

more information

0

一個進程都有自己的主線程。因此,當使用不同的進程時,即:remote,那麼這意味着在該進程中定義的代碼將在單獨的線程上運行。您通常不需要爲普通工作流程執行此操作。