Builder (android.content.Context) 'is not publicly available in' io.realm.RealmConfiguration.Builder '. Cannot access from external package.

And add the dependencies and plugins, everything is fine, but when I put it

private void setUpRealmConfig(){ RealmConfiguration config = new RealmConfiguration.Builder(getApplicationContext()).deleteRealmIfMigrationNeeded().build(); Realm.setDefaultConfiguration(config); } 

in part = RealmConfiguration.Builder. I get this error:

Builder (android.content.Context) 'is not publicly available in' io.realm.RealmConfiguration.Builder '. Not available from external package

and I don’t know what to do.

+8
java android realm
source share
3 answers

If I'm not mistaken, starting with version 2 of Realm, you need to pass the Ream context by init() method.

  • you need to call init() from Realm
  • you can build your domain configuration

 private void setUpRealmConfig(){ // initialize Realm Realm.init(getApplicationContext()); // create your Realm configuration RealmConfiguration config = new RealmConfiguration. Builder(). deleteRealmIfMigrationNeeded(). build(); Realm.setDefaultConfiguration(config); } 
+27
source share

In Realm, we do not pass any Builder parameter. To set the Realm configuration parameter, we simply call Builder initialization.

For example: -

  Realm.init(getApplicationContext()); RealmConfiguration realmConfiguration = new RealmConfiguration.Builder() .name(Realm.DEFAULT_REALM_NAME) .schemaVersion(0) .deleteRealmIfMigrationNeeded() .build(); Realm.setDefaultConfiguration(realmConfiguration); 
+8
source share

This constructor seems to be out of date. Try using this instead:

 RealmConfiguration config = new RealmConfiguration.Builder().deleteRealmIfMigrationNeeded().build(); 
+2
source share

All Articles