来自匕首模块:
Error: Unexpected request: GET http://35.161.59.162:4040/usr/1
No more request expected
at $httpBackend (angular-mocks.js:1420)
at sendReq (angular.js:11517)
at serverRequest (angular.js:11227)
at processQueue (angular.js:15961)
at angular.js:15977
at Scope.$eval (angular.js:17229)
at Scope.$digest (angular.js:17045)
at Scope.$apply (angular.js:17337)
at bootstrapApply (angular.js:1749)
at Object.invoke (angular.js:4665)
我注入的地方
@Provides @PerMediaSession @Nullable
MediaControllerCompat provideMediaController(Context appContext, MediaSessionCompat mediaSessionCompat) {
try {
return new MediaControllerCompat(appContext, mediaSessionCompat.getSessionToken());
} catch (RemoteException e) {
e.printStackTrace();
return null;
}
}
我收到以下编译错误
class PlayerPresenter
@Inject constructor(val fileManager: FileManager,
@Nullable val mediaController: MediaControllerCompat?) : PlayerContract.Presenter { <...>
我试图将dagger模块转换为Kotlin,Dagger就是这样看Jetbrains @Nullable注释,但由于某种原因没有在构造函数类中看到注释。
我使用Dagger 2.9
答案 0 :(得分:0)
与Kotlin的互动性很好,这是我的疏忽。
问题发生的原因是我在dagger模块中提供了接口实例,并且提供了方法接收会话compat作为没有Nullable注释的参数。 Dagger确实理解Kotlin中没有任何注释的可空类型。