我有一個ApplicationComponent
它提供了訪問我的庫: LocationRepository,PlaylistRepository,...匕首2多進程依賴
這些倉庫都是@Singleton
。 目前爲止這麼好。
我的問題是,我需要從另一個進程中的服務訪問這些存儲庫之一(LocationRepository)。
我可以在該服務中執行new LocationRepository(params)
(並且由於服務生命週期與應用程序的生命週期無關,所以我確實需要另一個實例),但這不是很安全。
如果我改變服務在匕首中的創建方式,我可能會忘記更新服務。
那麼有沒有辦法讓一個組件的一部分(這裏是LocationService)分別聲明並在兩個不同的組件中以相同的方式實例化?
這確實允許我使用不同的@Named聲明組件兩次,但它不能保證注入到LocationRepositories構造函數中的對象是相同的 – Teovald
您可以創建一個模塊來提供您需要的用於LocationRepos的參數,有2個組件使用該模塊。他們必須有相同的範圍。 – mbmc