Solucionado (ver solução)
Solucionado
(ver solução)
1
resposta

Estou com dúvida no curso de Android: Aplicações e armazenamento de dados - Parte 1, no exercício 12 do capítulo Persistência com SQLite.

Não entendi muito bem a questão e como posso resolvê-la.

1 resposta
solução!

criando um DataBaseHelper e generalizando os métodos. Na classe AlunoDao, instanciamos um objeto DataBaseHelper e através dele chamamos as ações do banco.

import android.content.ContentValues;
import android.content.Context;
import android.database.Cursor;
import android.database.sqlite.SQLiteDatabase;
import android.database.sqlite.SQLiteDatabase.CursorFactory;
import android.database.sqlite.SQLiteOpenHelper;

public class DatabaseHelper extends SQLiteOpenHelper {

    private String queryCreate;
    private String queryUpdate;
    private String name;
    private CursorFactory factory;
    private int version;

    DatabaseHelper(Context context, String name, CursorFactory factory, int version, String queryCreate, String queryUpdate) {
      super(context,name,factory,version);
      this.queryCreate = queryCreate;
      this.queryUpdate = queryUpdate;
      this.name = name;
      this.factory = factory;
      this.version= version;
    }

    @Override
    public void onCreate(SQLiteDatabase db) {
        db.execSQL(this.queryCreate);

    }

    @Override
    public void onUpgrade(SQLiteDatabase db, int oldVersion, int newVersion) {
        db.execSQL(this.queryUpdate);
        this.onCreate(db);

    }

    public void salvar(ContentValues values){
        getWritableDatabase().insert(name, null, values);

    }

    public Cursor listar(String[] colunas){
        Cursor cursor = getWritableDatabase().query(name, colunas, null,null, null, null, null);
        return cursor;
    }



}