Я пытаюсь сделать резервную копию базы данных sqlite из Android Studio. Я сделал эту базу данных с расширенным классом SQLiteOpenHelper, и я понятия не имею, как его резервировать. После резервного копирования мне нужно будет поделиться им и открыть его с тем же приложением, установленным на другом устройстве. Могу ли я это сделать?
Я покажу вам код:
BaseDatos. java
public class baseDeDatos extends SQLiteOpenHelper{
public baseDeDatos(@Nullable Context context, @Nullable String name, @Nullable SQLiteDatabase.CursorFactory factory, int version) {
super(context, name, factory, version);
}
@Override
public void onCreate(SQLiteDatabase db) {
db.execSQL("CREATE TABLE IF NOT EXISTS usuario("+
"id INTEGER PRIMARY KEY AUTOINCREMENT,"+
"nombre VARCHAR(25),"+
"pass VARCHAR(25),"+
"nick VARCHAR(25)"+
");");
}
Registro. java
public class Registro extends AppCompatActivity {
private EditText etNombre, etPass, etNick;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_registro);
etNombre = (EditText) findViewById(R.id.lineUser);
etPass = (EditText) findViewById(R.id.linePass);
etNick = (EditText) findViewById(R.id.lineNick);
}
public void Registrar_on_click(View view)
{
baseDeDatos admin = new baseDeDatos(this,"BaseDatos.sqlite", null, 3);
SQLiteDatabase base = admin.getWritableDatabase();
String nombre = etNombre.getText().toString();
String pass = etPass.getText().toString();
String nick = etNick.getText().toString();
if (!nombre.isEmpty() && !pass.isEmpty() && !nick.isEmpty() )
{
ContentValues registro = new ContentValues();
registro.put("nombre",nombre);
registro.put("pass",pass);
registro.put("nick",nick);
base.insert("usuario", null, registro);
base.close();
etNombre.setText("");
etPass.setText("");
etNick.setText("");
Toast.makeText(this, "Registro exitoso\n" +
"Nombre: "+nombre+"\nPass: "+pass+"\nNick: "+nick,
Toast.LENGTH_LONG).show();
}
else
Toast.makeText(this, "Llenar los campos de datos", Toast.LENGTH_LONG).show();
}