Я новичок в кинжале, и я пытаюсь изучить его, играя вокруг и создавая небольшое приложение для Android. У меня есть класс приложений, как это:Значение, введенное кинжалом, равно null
class App extends Application {
@Override onCreate() {
super.onCreate();
ObjectGraph objectGraph = ObjectGraph.create(new AppModule(this));
objectGraph.inject(this);
}
}
и модуль вроде этого:
@dagger.Module(injects = {App.class, MainActivity.class})
public class AppModule {
private App app;
public AppModule(App app) { this.app = app; }
@Provides @Singleton App provideApp(){ return app; }
}
и активность, где впрыскивается приложение:
public class MainActivity extends Activity {
@Inject App app;
@Override onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
if(app == null)
Toast.makeText(this, "app is null", 1000).show();
}
}
My App назначенную в файле манифеста и контрольные точки int App.onCreate()
запускаются.
Я что-то пропустил? Может ли кто-нибудь сказать мне, почему это так? Благодарю.
ой, спасибо !! помогите! –
Странно, в моем случае один класс получил впрыснутых членов, а другой - нет. Оба они обслуживаются ObjectGraph. –