java - Realm 数据库不写数据

标签 java android realm

我试图使用 Realm 写入数据库,但它确实写入了值。我也加了

apply plugin: 'android-apt' apply plugin: 'realm-android'

我在异步任务中使用它。以下 如何正确写入 Realm 数据库

protected Integer doInBackground(Integer[] p1)
{
    Realm.init(acti);
    RealmConfiguration otherConfig = new RealmConfiguration.Builder().directory(new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/xMapper/"+fileN)).build();
    Realm.setDefaultConfiguration(otherConfig);
    realm = Realm.getDefaultInstance();

    for (File file:foxReaderLost)
    {   
        final byte[] x=utilz.compress(FileUtils.readFileToString(file));
        final String y=file.getName();

        realm.executeTransaction(new Realm.Transaction(){
                @Override
                public void execute(Realm p1)
                {
                    IconModel icm=p1.createObject(IconModel.class);
                    icm.setName(y);
                    icm.setSource(x);
                }
            });
     }
}

我的 RealmObject

public class IconModel extends RealmObject {
    private byte[] msource;
    private String mname;

    public void setSource(byte[] lastName)
    {
        this.msource = lastName;
    }

    public void setName(String firstName)
    {
        this.mname = firstName;
    }
}

最佳答案

启动你的项目,如果你还没有一个扩展 Application 的类,就创建一个。

class App extends Application {

    @Override
    public void onCreate() {
        Realm.init(acti);
        RealmConfiguration otherConfig = new RealmConfiguration.Builder().directory(new File(Environment.getExternalStorageDirectory().getAbsolutePath() + "/xMapper/"+fileN)).build();
        Realm.setDefaultConfiguration(otherConfig);
    }
}

然后您只需调用 Realm.getDefaultInstance() 来获取 Realm 对象以查询/插入/更新/删除您的数据库。

关于java - Realm 数据库不写数据,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/54270414/

相关文章:

java - 安卓 : How to use same AlarmManager in loop?

java - Java类是对象吗?

Java Jersey : Whats the best way to share data between the Main-object and the Webservice

android - 使用 YouTube apk?

android - 如何更改我的应用程序名称

react-native - 使用 Realm Listview 优于标准 React Native Listview 的好处

java - 在范围内无法访问该类型的封闭实例

android - Android 应用程序中的 NTLM 身份验证

java - 我可以在 Realm 对象 android 中有字符串的 arrayList

ios - 解析 NSPredicate 中的 UUID