2017-02-17 13 views
6

मैं instructions from the official docs के बाद अपने एंड्रॉइड ऐप में डैगर 2 जोड़ रहा हूं। मैंने पहले डैगर और डैगर 2 का उपयोग किया है, ऐसा लगता है कि Google ने निम्न उद्धरण के रूप में एंड्रॉइड के लिए कार्यान्वयन में सुधार किया है;Dagger2 dagger.android। * कक्षाएं मौजूद नहीं हैं

dagger.android में कक्षाएं इस पैटर्न को सरल बनाने के लिए एक दृष्टिकोण प्रदान करती हैं।

...

इसके बाद, अपने आवेदन HasDispatchingActivityInjector को लागू करने के लिए और एक DispatchingAndroidInjector @Inject activityInjector से वापस जाने के लिए() विधि:

यह भयानक लग रहा है, लेकिन मैं पैकेज नहीं मिल सकता है dagger.android कहीं भी, और जब मैं रिपोजिटरी को देखता हूं, तो मुझे कुछ भी नहीं मिलता है, HasDispatchingActivityInjector Google पर कोई हिट नहीं देता है। दस्तावेज़ों में वर्णित इन वर्ग कहां हैं?

मैं अन्य सभी डैगर 2 कक्षाएं ठीक कर सकता हूं (मॉड्यूल इत्यादि) ताकि libs वहां हैं। build.gradle से

मेरे कटार निर्भरता:

compile 'com.google.dagger:dagger:2.9' 
compile 'com.google.dagger:dagger-android:2.9' 
annotationProcessor 'com.google.dagger:dagger-compiler:2.9' 

उत्तर

6

कोड google/dagger Github repository में सूचीबद्ध है, java/dagger/android subtree के तहत, चार दिन पहले प्रतिबद्ध (फरवरी 13, 2017 3:58 PM PST)। इसमें HasDispatchingActivityInjector शामिल है।

आपकी ग्रेडल फ़ाइल सही है: डैगर का एंड्रॉइड एक्सटेंशन निकट dagger-android पैकेज के माध्यम से उपलब्ध है, न कि मुख्य dagger पैकेज के माध्यम से। See Maven's Dagger packages for more details.

संपादित करें: As of yesterday the dagger.android Android helpers are released in version 2.10-rc1

+0

कूल यह वहाँ है! मैं देखता हूं कि बहुत अच्छी चीजें। वैसे भी, मेरे पास 'com.google.dagger: dagger-android: 2.9' जैसा ऊपर देखा गया है, लेकिन नवीनतम रिलीज 14 दिन पहले था, 'dagger.android' से 11 दिन पहले दिखाया गया था। ऐसा प्रतीत होता है कि प्रलेखन जल्दी हो गया है! मैं इसे जवाब के रूप में चिह्नित करूंगा, धन्यवाद। –

6

dagger.android कक्षाएं संस्करण 2.10here are release notes में जोड़ा गया था।

अपने कोड बनाने से काम करता है आप build.gradle से अपने कटार निर्भरता को अपडेट करना होगा:

compile 'com.google.dagger:dagger:2.10' 
compile 'com.google.dagger:dagger-android:2.10' 
annotationProcessor 'com.google.dagger:dagger-compiler:2.10' 
संबंधित मुद्दे