Android 领域应用程序太大了

Android 领域应用程序太大了,android,realm,Android,Realm,我的android领域数据库大小为20MB+。我创建了一个简单的应用程序,从网络中加载20个项目并保存。为什么我的应用程序这么大 仅配置: Realm.init(this); Realm.setDefaultConfiguration(new RealmConfiguration.Builder() .deleteRealmIfMigrationNeeded() .name("database.db") .build

我的android领域数据库大小为20MB+。我创建了一个简单的应用程序,从网络中加载20个项目并保存。为什么我的应用程序这么大

仅配置:

Realm.init(this);
    Realm.setDefaultConfiguration(new RealmConfiguration.Builder()
            .deleteRealmIfMigrationNeeded()
            .name("database.db")
            .build());
从网络加载数据的方法:

public void loadMovies() {
    if (AppUtil.isNetworkConnectionAvailable()) {
        Timber.d("available");
        apiInterface.getAllMovies()
                .subscribeOn(Schedulers.io())
                .doOnNext(request -> {
                    List<Movie> movies = request.getMovies();
                    for (int i = 0; i < movies.size(); i++) {
                        Timber.d("movie: %s", movies.get(i).toString());
                        movieDao.addMovie(movies.get(i));
                    }
                })
                .observeOn(AndroidSchedulers.mainThread())
                .subscribe(request -> {
                    //completed
                });
    } 
}
应该是:

            .doOnNext(request -> {
                movieDao.addMovies(request.getMovies());
            })

public void addMovies(列出电影){
try(Realm-Realm=Realm.getDefaultInstance()){
realm.executeTransaction(r->r.insertOrUpdate(movies));
}
}

我找到了问题的答案:

和其他网站:

您保存数据的地方确实比配置更为相关。我是否应该在通过rxJava加载数据的地方添加一些代码,以及使用copyToRealmOrUpdate()的方法?是的,这应该会有帮助好的,我更新了问题。好的,谢谢。但它仍然很大。我在另一台设备上检查了应用程序,它的大小是12MB。
            .doOnNext(request -> {
                movieDao.addMovies(request.getMovies());
            })
public void addMovies(List<Movie> movies) {
    try(Realm realm = Realm.getDefaultInstance()) {
        realm.executeTransaction(r -> r.insertOrUpdate(movies));
    }
}