1
0
mirror of https://github.com/oliexdev/openScale.git synced 2025-08-26 09:44:31 +02:00

updated backup method so that it will work with the Room library

This commit is contained in:
OliE
2018-01-05 20:27:54 +01:00
parent 5f43e271c9
commit 922a671478
2 changed files with 16 additions and 13 deletions

View File

@@ -80,7 +80,7 @@ public class OpenScale {
alarmHandler = new AlarmHandler(); alarmHandler = new AlarmHandler();
btCom = null; btCom = null;
fragmentList = new ArrayList<>(); fragmentList = new ArrayList<>();
appDB = Room.databaseBuilder(context, AppDatabase.class, "openScaleDatabase").allowMainThreadQueries().build(); appDB = Room.databaseBuilder(context, AppDatabase.class, "openScale.db").allowMainThreadQueries().build();
measurementDAO = appDB.measurementDAO(); measurementDAO = appDB.measurementDAO();
userDAO = appDB.userDAO(); userDAO = appDB.userDAO();

View File

@@ -15,6 +15,7 @@
*/ */
package com.health.openscale.gui.preferences; package com.health.openscale.gui.preferences;
import android.content.SharedPreferences;
import android.os.Bundle; import android.os.Bundle;
import android.os.Environment; import android.os.Environment;
import android.preference.EditTextPreference; import android.preference.EditTextPreference;
@@ -27,6 +28,8 @@ import android.preference.PreferenceManager;
import android.widget.Toast; import android.widget.Toast;
import com.health.openscale.R; import com.health.openscale.R;
import com.health.openscale.core.OpenScale;
import com.health.openscale.core.datatypes.ScaleUser;
import java.io.File; import java.io.File;
import java.io.FileInputStream; import java.io.FileInputStream;
@@ -50,7 +53,6 @@ public class BackupPreferences extends PreferenceFragment {
addPreferencesFromResource(R.xml.backup_preferences); addPreferencesFromResource(R.xml.backup_preferences);
importBackup = (Preference) findPreference(PREFERENCE_KEY_IMPORT_BACKUP); importBackup = (Preference) findPreference(PREFERENCE_KEY_IMPORT_BACKUP);
importBackup.setOnPreferenceClickListener(new onClickListenerImportBackup()); importBackup.setOnPreferenceClickListener(new onClickListenerImportBackup());
@@ -115,8 +117,15 @@ public class BackupPreferences extends PreferenceFragment {
public boolean onPreferenceClick(Preference preference) { public boolean onPreferenceClick(Preference preference) {
File exportDir = new File(Environment.getExternalStorageDirectory(), PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext()).getString("exportDir", "openScale Backup")); File exportDir = new File(Environment.getExternalStorageDirectory(), PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext()).getString("exportDir", "openScale Backup"));
importBackup("openScaleDatabase.db", exportDir); importBackup("openScale.db", exportDir);
importBackup("openScaleUserDatabase.db", exportDir);
List<ScaleUser> scaleUserList = OpenScale.getInstance(getActivity().getApplicationContext()).getScaleUserList();
if (!scaleUserList.isEmpty()) {
SharedPreferences prefs = PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext());
prefs.edit().putInt("selectedUserId", scaleUserList.get(0).getId()).commit();
OpenScale.getInstance(getActivity().getApplicationContext()).updateScaleData();
}
return true; return true;
} }
@@ -127,8 +136,7 @@ public class BackupPreferences extends PreferenceFragment {
public boolean onPreferenceClick(Preference preference) { public boolean onPreferenceClick(Preference preference) {
File exportDir = new File(Environment.getExternalStorageDirectory(), PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext()).getString("exportDir", "openScale Backup")); File exportDir = new File(Environment.getExternalStorageDirectory(), PreferenceManager.getDefaultSharedPreferences(getActivity().getApplicationContext()).getString("exportDir", "openScale Backup"));
exportBackup("openScaleDatabase.db", exportDir); exportBackup("openScale.db", exportDir);
exportBackup("openScaleUserDatabase.db", exportDir);
return true; return true;
} }
@@ -138,9 +146,7 @@ public class BackupPreferences extends PreferenceFragment {
if (!isExternalStoragePresent()) if (!isExternalStoragePresent())
return false; return false;
File exportFile = new File(Environment.getDataDirectory() + File exportFile = getActivity().getApplicationContext().getDatabasePath(databaseName);
"/data/com.health.openscale" +
"/databases/" + databaseName);
File importFile = new File(exportDir, databaseName); File importFile = new File(exportDir, databaseName);
if (!importFile.exists()) { if (!importFile.exists()) {
@@ -164,10 +170,7 @@ public class BackupPreferences extends PreferenceFragment {
if (!isExternalStoragePresent()) if (!isExternalStoragePresent())
return false; return false;
File dbFile = new File(Environment.getDataDirectory() + File dbFile = getActivity().getApplicationContext().getDatabasePath(databaseName);
"/data/com.health.openscale" +
"/databases/" + databaseName);
File file = new File(exportDir, databaseName); File file = new File(exportDir, databaseName);
if (!exportDir.exists()) { if (!exportDir.exists()) {