android - 如何解决此 Android SQLite Room DAO 错误消息?
问题描述
我不知道下面的问题有什么问题?
代码:
分类DAO.kt
@Dao
interface CategoryDAO {
@Query("select * from CategoryDesign")
suspend fun getCategory(): MutableLiveData<List<CategoryDesign>>
}
分类设计.kt
@Entity
data class CategoryDesign (
@PrimaryKey
var categoryDesignID:String,
var designImage:String,
var designTitle:String){
constructor() : this("","","")
override fun toString(): String {
return designTitle
}
}
按运行应用程序按钮将显示如下错误:
error: Not sure how to convert a Cursor to this method's return type (androidx.lifecycle.MutableLiveData<java.util.List<com.squall.searchdesigner.model.CategoryDesign>>).
public abstract java.lang.Object getCategory(@org.jetbrains.annotations.NotNull()
w: [kapt] Incremental annotation processing requested, but support is disabled because the following processors are not incremental: androidx.room.RoomProcessor (DYNAMIC), android.databinding.annotationprocessor.ProcessDataBinding (DYNAMIC).
依赖项:
dependencies {
def room_version = "2.2.3"
kapt "androidx.room:room-compiler:$room_version"
implementation "androidx.room:room-ktx:$room_version"
}
解决方案
似乎您只能使用LiveData返回类型。也许 Room 不允许您使用 MutableLiveData?
推荐阅读
- llvm - 如何加载“*.ll”文件并使用 llvmlite (llvmpy) 制作模块
- javascript - 先自动选择
- python - 玩家在 pygame 中达到边界后卡住
- node.js - 编译后无法覆盖“用户”模型。解决后我得到“用户”未定义
- express - 我怎样才能有一个 Sequelize 复合键(非唯一,唯一)对,然后用它来映射关联?
- c++ - C ++将原始指针包装在容器双端队列中的类中不起作用?
- ios - 如何将数据从 SwiftUI 传递到 ViewController
- reactjs - scss 文件不包含默认导出(Gatsby 和 Sass)
- api - 通过 POST 请求向 Discord 频道发送消息会导致代码 401
- sql - SQL - 检查员工名字和/或姓氏是否存在