This is my first time using Hilt
for DI and I'm unsure what I'm doing incorrectly. I'm trying to Field inject
my TestClass
into my MainActivity
, but it's giving me a null object reference when I call the method of the injected TestClass
I've made sure to create an BaseApplication
class that has the annotation HiltAndroidApp
@HiltAndroidApp
public class BaseApplication extends Application {
...
}
The class I'm trying to inject into my MainActivity
import javax.inject.Inject;
public class TestClass {
@Inject
public TestClass() {
}
public String getName(){
return "Hello World";
}
}
And using FieldInjection
in my MainActivity
:
@AndroidEntryPoint
public class MainActivity extends AppCompatActivity implements TestAdapterCallback {
@Inject
TestClass testClass;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
ButterKnife.bind(this);
Timber.d(testClass.getName()); //Giving a null object reference
...
I followed a tutorial off youtube that is doing Field Injection. Not sure what I'm doing incorrectly here.