无法将'io.realm.Realm'中的'getInstance(io.realm.RealmConfiguration)'应用于'(android.content.Context)'错误

时间:2019-03-23 08:08:19

标签: java android realm

我正在使用领域添加新数据库,并且在添加时   领域realm = Realm.getInstance(getApplicationContext()); 我收到此错误

 'getInstance(io.realm.RealmConfiguration)' in 'io.realm.Realm' cannot be applied to '(android.content.Context)'

我不能爱它

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_mobile);
    Realm.init(this);
    RealmConfiguration realmConfiguration = new RealmConfiguration.Builder()
            .build();
    Realm.setDefaultConfiguration(realmConfiguration);

    final EditText mobType =(EditText) findViewById(R.id.editText1);
    final EditText mobModel = (EditText)findViewById(R.id.editText2);
    final EditText mobStorage =(EditText) findViewById(R.id.editText3);
    final EditText mobRam =(EditText) findViewById(R.id.editText4);

    Button addMob = findViewById(R.id.addbutton2);
    addMob.setOnClickListener(new View.OnClickListener() {
        @Override
        public void onClick(View v) {
            MobileJ mobilej = new MobileJ();
            mobilej.setMobtype(mobType.getText().toString());
            mobilej.setMobmodel(mobModel.getText().toString());
            mobilej.setMobRAM(mobRam.getText().length());
            mobilej.setMobstorge(mobStorage.getText().length());

            Realm realmm = Realm.getDefaultInstance(getApplicationContext());
            realmm.beginTransaction();
            realmm.copyToRealmOrUpdate(mobilej);
            realmm.commitTransaction();

1 个答案:

答案 0 :(得分:1)

您可以通过两种方式获取Realm实例:

  
      
  1. Realm.getDefaultInstance();
  2.   

您无需将任何参数传递给此方法。在您的代码中,您做到了。

  
      
  1. Realm.getInstance(config);
  2.   

此方法需要RealmConfig而不是上下文。