我将 Moxy 安装到我的项目中,并根据文档设置注释。但是,当我启动该应用程序时,它会崩溃:
FATAL EXCEPTION: main
Process: com.example.project, PID: 709
java.lang.NullPointerException
at com.example.project.presentation.presenter.splash.SplashPresenter.checkLoggedInAndNavigate(SplashPresenter.java:35)
build.gradle 中的依赖项:
...
// Moxy
compile 'com.arello-mobile:moxy:1.3.3'
provided 'com.arello-mobile:moxy-compiler:1.3.3'
compile 'com.arello-mobile:moxy-app-compat:1.3.3'
}
这是查看界面:
public interface SplashView extends MvpView {
void navigateToMainScreen();
void navigateToLoginScreen();
}
这是活动,实现了该视图:
public class SplashActivity extends MvpAppCompatActivity implements SplashView {
public static final String TAG = "SplashActivity";
@InjectPresenter
SplashPresenter mSplashPresenter;
...
}
这是代码,它崩溃的地方:
@InjectViewState
public class SplashPresenter extends MvpPresenter<SplashView> {
SplashModel mModel = new SplashModel();
...
public void checkLoggedInAndNavigate() {
if (checkLoggedIn()) {
getViewState().navigateToMainScreen();
} else {
getViewState().navigateToLoginScreen();
}
}
}
当它尝试获取 ViewState(由注释自动生成)时,它会抛出异常
那有什么问题?