본문 바로가기

ANDROID/Debug Logs

[안드로이드 | RxAndroid | Room] no suitable method found for createFlowable room 해결

Room DB의 쿼리 결과를 Flowable<Boolean>으로 받고 싶었는데

 

빌드 실행 후

 

no suitable method found for createFlowable room..

 

와 같은 오류가 발생하였다.

 

Room에 사용하는 Dao 파일을 IDE가 실제 사용하는 자바 코드인 DaoImpl로 만드는 과정에서 나타나는 

 

오류였다.

 

 

해결법은 단순했는데, Flowable 사용이 가능한 room 관련 implementation을 추가적으로 build.gradle에 

 

포함시켜야 하는 것이었다.

 


기존에는 room과 rxJava 관련 implementation이 이미 들어가 있었으나 

 

implementation "android.arch.persistence.room:rxjava2:1.1.1" 

 

아래와 같은 implementation이 추가적으로 필요한 것이었다.


implementation 'androidx.room:room-rxjava2:2.1.0-alpha06'

 

< 참조 >

https://stackoverflow.com/questions/55623588/incorrect-code-generation-from-room-query-when-using-flowable-observable

 

Incorrect code generation from room @Query when using Flowable/Observable

When trying to use RxJava with room, I am getting an error that the generated code is wrong. When returning a Single, it works fine. But when using flowable or observable its adding an extra boolean

stackoverflow.com