1
除非在圖中的單對象與限定符註解我們就可以撥打電話:獲取對象從匕首圖形標註有資格
graph.get(Bus.class);
如果此對象與預選賽模塊定義註釋,然後它會拋出IllegalStateException異常。
有從圖中獲取該對象不是一個更好的辦法:
public class BusWrapper {
@Inject
@MyQualifier
Bus bus;
}
和
graph.inject(new BusWrapper()).bus;
我有一組的圖表(一個圖表爲每個帳戶)。每個帳戶圖表和一個應用程序範圍的總線(用不同的限定符註釋)分開的總線。 一旦我收到GCM同步請求消息,我需要從正確的圖表中檢索總線以傳遞同步請求。
想想我會創建並提供一個BusFactory併爲每個總線關聯一個ID /名稱。然後,當GCM到達時,執行像'busFactory.getBusByName('nameOfBus')這樣的操作。' – cYrixmorten 2014-10-05 16:11:04
@cYrixmorten這不是安全的或靜態可分析的,所有這些都是Dagger和合格注入提供的。 – 2014-10-05 17:38:42
這個代碼裏面的對象是什麼,它不能直接注入所有合格的'Bus'實例,然後在它們之間切換/ ifelse? – 2014-10-05 17:40:12