Adding SD card backup option to the preferences

This commit is contained in:
Rodrigo Damazio
2010-08-20 23:26:38 -03:00
parent ac8b7264b3
commit 98b894ed8e
7 changed files with 507 additions and 13 deletions
@@ -15,6 +15,7 @@
*/
package com.google.android.apps.mytracks;
import com.google.android.apps.mytracks.io.backup.ExternalFileBackup;
import com.google.android.apps.mytracks.services.SafeStatusAnnouncerTask;
import com.google.android.maps.mytracks.R;
@@ -23,6 +24,7 @@ import android.preference.CheckBoxPreference;
import android.preference.ListPreference;
import android.preference.Preference;
import android.preference.Preference.OnPreferenceChangeListener;
import android.preference.Preference.OnPreferenceClickListener;
import android.preference.PreferenceActivity;
import android.preference.PreferenceManager;
import android.util.Log;
@@ -118,6 +120,35 @@ public class MyTracksSettings extends PreferenceActivity {
announcementFrequency.setSummary(
R.string.settings_announcement_not_available_summary);
}
// Disable cloud backup options if not supported
if (MyTracksConstants.ANDROID_API_LEVEL < 8) {
// TODO: Merge by moving pref names to XML
CheckBoxPreference cloudBackupPreference = (CheckBoxPreference) findPreference("backupToCloud");
cloudBackupPreference.setEnabled(false);
cloudBackupPreference.setChecked(false);
cloudBackupPreference.setSummaryOff(R.string.settings_not_available_summary);
}
Preference backupNowPreference = findPreference("backupToSd");
backupNowPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
ExternalFileBackup helper = new ExternalFileBackup(MyTracksSettings.this);
helper.writeToDefaultFile();
return true;
}
});
Preference restoreNowPreference = findPreference("restoreFromSd");
restoreNowPreference.setOnPreferenceClickListener(new OnPreferenceClickListener() {
@Override
public boolean onPreferenceClick(Preference preference) {
ExternalFileBackup helper = new ExternalFileBackup(MyTracksSettings.this);
helper.restoreFromFileList();
return true;
}
});
}
/**