我在使用 Android 的 Room 持久化库时遇到了一个问题,但是我找不到相关的文档。这个问题涉及到自动生成主键。
我有一个类实体,看起来像这样:
@Entity
public class Preference {
@PrimaryKey(autoGenerate = true)
private int id;
public void setId(int id) {
this.id = id;
}
}
当我手动设置id时,这个工作良好,但是当我不设置主键时,我会收到与主键为空有关的错误。查看自动生成的文件,我无法看到任何地方它会自动递增主键。
所以我的问题是:是否可以使用setter自动生成私有成员的主键,还是我需要在setter中手动自动生成我的键?