我真的不知道为什么我有这个错误。代码似乎非常简单。
@Entity(indices = {@Index("clientLocalId")})
.
.
private @PrimaryKey String clientLocalId;
public String getClientLocalId() {
return clientLocalId;
}
public void setClientLocalId(long idInvoice, String receipt) {
this.clientLocalId = String.valueOf(idInvoice) + " " + receipt;
}
我尝试仅在客户端中更改名称,重新启动并清除缓存,但相同的错误。
错误:找不到字段的设置器。 私有@PrimaryKey字符串客户端本地ID; ^
任何想法都是值得赞赏的。提前感谢!
Room 正在寻找一个只接受单个字符串值的二传手。您的方法有两个。
将其更改为以下内容,并使用其他方法创建串联 ID。
public void setClientLocalId(String id) {
this.clientLocalId = id;
}
它的发生是因为clientLocalId
的第二个参数receipt
, 删除它或添加另一个 setter 方法, 我建议您在插入数据库之前将收据添加到实体类之外的clientLocalId