我正在研究健身追踪的基本项目。我想用为用户准备的练习库初始化应用程序。如何提供数据并设置事务来填充数据库?我已经看到了下面的答案,但我找不到如何实际设置示例,在答案中定义为MyInitialDataRealmTransaction
。
提前感谢任何见解。
How can I create a Realm database with initial data for my android app?
答案 0 :(得分:0)
初始数据将事务作为参数运行,如果首次创建Realm或删除Realm,则运行该参数,因为需要迁移并设置了该配置。
这是一个基本的例子。
public class RealmInitialData implements Realm.Transaction {
@Override
public void execute(Realm realm) {
Book book = new Book();
book.setId(1);
book.setAuthor("Reto Meier");
book.setTitle("Android 4 Application Development");
book.setImageUrl("http://api.androidhive.info/images/realm/1.png");
realm.insertOrUpdate(book);
book.setId(2);
book.setAuthor("Itzik Ben-Gan");
book.setTitle("Microsoft SQL Server 2012 T-SQL Fundamentals");
book.setImageUrl("http://api.androidhive.info/images/realm/2.png");
realm.insertOrUpdate(book);
book.setId(3);
book.setAuthor("Magnus Lie Hetland");
book.setTitle("Beginning Python: From Novice To Professional Paperback");
book.setImageUrl("http://api.androidhive.info/images/realm/3.png");
realm.insertOrUpdate(book);
book.setId(4);
book.setAuthor("Chad Fowler");
book.setTitle("The Passionate Programmer: Creating a Remarkable Career in Software Development");
book.setImageUrl("http://api.androidhive.info/images/realm/4.png");
realm.insertOrUpdate(book);
book.setId(5);
book.setAuthor("Yashavant Kanetkar");
book.setTitle("Written Test Questions In C Programming");
book.setImageUrl("http://api.androidhive.info/images/realm/5.png");
realm.insertOrUpdate(book);
}
@Override
public int hashCode() {
return RealmInitialData.class.hashCode();
}
@Override
public boolean equals(Object obj) {
return obj != null && obj instanceof RealmInitialData;
}
}
答案 1 :(得分:-1)
检出this Java库以生成伪造数据。组织得井井有条,也节省了很多时间。