summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--AndroidManifest.xml8
-rw-r--r--src/org/fox/ttrss/MainActivity.java7
-rw-r--r--src/org/fox/ttrss/OfflineActivity.java4
-rw-r--r--src/org/fox/ttrss/PrefsBackupAgent.java19
4 files changed, 34 insertions, 4 deletions
diff --git a/AndroidManifest.xml b/AndroidManifest.xml
index 73b86a7f..f43a4921 100644
--- a/AndroidManifest.xml
+++ b/AndroidManifest.xml
@@ -11,6 +11,8 @@
<uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
<application
+ android:allowBackup="true"
+ android:backupAgent="PrefsBackupAgent"
android:hardwareAccelerated="true"
android:icon="@drawable/icon"
android:label="@string/app_name" >
@@ -43,6 +45,10 @@
<activity
android:configChanges="keyboard|keyboardHidden|orientation|screenLayout|uiMode|screenSize|smallestScreenSize"
android:name="com.google.ads.AdActivity" />
+
+ <meta-data android:name="com.google.android.backup.api_key"
+ android:value="AEdPqrEAAAAIwG6zsGB4qo6ZhjfwIJpm9WI7AqmWaoRXm6ZJnA" />
+
</application>
-</manifest> \ No newline at end of file
+</manifest>
diff --git a/src/org/fox/ttrss/MainActivity.java b/src/org/fox/ttrss/MainActivity.java
index d7bdabe5..e89b6adc 100644
--- a/src/org/fox/ttrss/MainActivity.java
+++ b/src/org/fox/ttrss/MainActivity.java
@@ -479,7 +479,9 @@ public class MainActivity extends FragmentActivity implements OnlineServices {
registerReceiver(m_broadcastReceiver, filter);
- m_isOffline = m_prefs.getBoolean("offline_mode_active", false);
+ SharedPreferences localPrefs = getSharedPreferences("localprefs", Context.MODE_PRIVATE);
+
+ m_isOffline = localPrefs.getBoolean("offline_mode_active", false);
Log.d(TAG, "m_isOffline=" + m_isOffline);
Log.d(TAG, "m_smallScreenMode=" + m_smallScreenMode);
@@ -591,7 +593,8 @@ public class MainActivity extends FragmentActivity implements OnlineServices {
public void onClick(DialogInterface dialog,
int which) {
- SharedPreferences.Editor editor = m_prefs.edit();
+ SharedPreferences localPrefs = getSharedPreferences("localprefs", Context.MODE_PRIVATE);
+ SharedPreferences.Editor editor = localPrefs.edit();
editor.putBoolean("offline_mode_active", true);
editor.commit();
diff --git a/src/org/fox/ttrss/OfflineActivity.java b/src/org/fox/ttrss/OfflineActivity.java
index 1f7793bc..a03dbbf9 100644
--- a/src/org/fox/ttrss/OfflineActivity.java
+++ b/src/org/fox/ttrss/OfflineActivity.java
@@ -5,6 +5,7 @@ import org.fox.ttrss.OnlineServices.RelativeArticle;
import android.app.AlertDialog;
import android.app.Dialog;
import android.app.NotificationManager;
+import android.content.Context;
import android.content.DialogInterface;
import android.content.Intent;
import android.content.SharedPreferences;
@@ -215,7 +216,8 @@ public class OfflineActivity extends FragmentActivity implements
}
private void switchOnline() {
- SharedPreferences.Editor editor = m_prefs.edit();
+ SharedPreferences localPrefs = getSharedPreferences("localprefs", Context.MODE_PRIVATE);
+ SharedPreferences.Editor editor = localPrefs.edit();
editor.putBoolean("offline_mode_active", false);
editor.commit();
diff --git a/src/org/fox/ttrss/PrefsBackupAgent.java b/src/org/fox/ttrss/PrefsBackupAgent.java
new file mode 100644
index 00000000..0a7e5dec
--- /dev/null
+++ b/src/org/fox/ttrss/PrefsBackupAgent.java
@@ -0,0 +1,19 @@
+package org.fox.ttrss;
+
+import android.app.backup.BackupAgentHelper;
+import android.app.backup.SharedPreferencesBackupHelper;
+
+public class PrefsBackupAgent extends BackupAgentHelper {
+ // The name of the SharedPreferences file
+ static final String PREFS = "org.fox.ttrss_preferences";
+
+ // A key to uniquely identify the set of backup data
+ static final String PREFS_BACKUP_KEY = "prefs";
+
+ // Allocate a helper and add it to the backup agent
+ @Override
+ public void onCreate() {
+ SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper(this, PREFS);
+ addHelper(PREFS_BACKUP_KEY, helper);
+ }
+}