diff options
| -rw-r--r-- | main/AndroidManifest.xml | 6 | ||||
| -rw-r--r-- | main/proguard.cfg | 2 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/backup/CentralBackupAgent.java | 18 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/cgeoinit.java | 2 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/compatibility/AndroidLevel8.java | 4 | ||||
| -rw-r--r-- | main/src/cgeo/geocaching/compatibility/Compatibility.java | 6 |
6 files changed, 37 insertions, 1 deletions
diff --git a/main/AndroidManifest.xml b/main/AndroidManifest.xml index b05da84..bfb9b38 100644 --- a/main/AndroidManifest.xml +++ b/main/AndroidManifest.xml @@ -22,11 +22,15 @@ android:name=".cgeoapplication" android:theme="@style/cgeo" android:label="@string/app_name" - android:icon="@drawable/cgeo" > + android:icon="@drawable/cgeo" + android:backupAgent="cgeo.geocaching.backup.CentralBackupAgent" > <uses-library android:name="com.google.android.maps" /> <meta-data android:name="android.app.default_searchable" android:value=".cgeoadvsearch" /> + <meta-data + android:name="com.google.android.backup.api_key" + android:value="AEdPqrEAAAAIsvD_aUSDMwWOf9NkwwxZ4kJJI_AG2EaxjSu2jw" /> <activity android:name=".cgeo" android:label="@string/app_name" diff --git a/main/proguard.cfg b/main/proguard.cfg index ab64d37..c5fc0b5 100644 --- a/main/proguard.cfg +++ b/main/proguard.cfg @@ -44,3 +44,5 @@ public <init>(android.content.Context, android.util.AttributeSet, int); public void set*(...); } + +-keep public class cgeo.geocaching.backup.CentralBackupAgent diff --git a/main/src/cgeo/geocaching/backup/CentralBackupAgent.java b/main/src/cgeo/geocaching/backup/CentralBackupAgent.java new file mode 100644 index 0000000..742eb0c --- /dev/null +++ b/main/src/cgeo/geocaching/backup/CentralBackupAgent.java @@ -0,0 +1,18 @@ +package cgeo.geocaching.backup; + +import cgeo.geocaching.cgSettings; + +import android.app.backup.BackupAgentHelper; +import android.app.backup.SharedPreferencesBackupHelper; + +public class CentralBackupAgent extends BackupAgentHelper { + + static final String PREFS_BACKUP_KEY = "prefs"; + + @Override + public void onCreate() { + SharedPreferencesBackupHelper helper = new SharedPreferencesBackupHelper(this, cgSettings.preferences); + addHelper(PREFS_BACKUP_KEY, helper); + } + +} diff --git a/main/src/cgeo/geocaching/cgeoinit.java b/main/src/cgeo/geocaching/cgeoinit.java index 10495ee..455c00b 100644 --- a/main/src/cgeo/geocaching/cgeoinit.java +++ b/main/src/cgeo/geocaching/cgeoinit.java @@ -3,6 +3,7 @@ package cgeo.geocaching; import cgeo.geocaching.LogTemplateProvider.LogTemplate; import cgeo.geocaching.cgSettings.mapSourceEnum; import cgeo.geocaching.activity.AbstractActivity; +import cgeo.geocaching.compatibility.Compatibility; import org.apache.commons.lang3.StringUtils; @@ -139,6 +140,7 @@ public class cgeoinit extends AbstractActivity { @Override public void onStop() { saveValues(); + Compatibility.dataChanged(getPackageName()); super.onStop(); } diff --git a/main/src/cgeo/geocaching/compatibility/AndroidLevel8.java b/main/src/cgeo/geocaching/compatibility/AndroidLevel8.java index 5bca728..5dc6204 100644 --- a/main/src/cgeo/geocaching/compatibility/AndroidLevel8.java +++ b/main/src/cgeo/geocaching/compatibility/AndroidLevel8.java @@ -1,6 +1,7 @@ package cgeo.geocaching.compatibility; import android.app.Activity; +import android.app.backup.BackupManager; import android.view.Display; public class AndroidLevel8 { @@ -10,4 +11,7 @@ public class AndroidLevel8 { return display.getRotation(); } + public void dataChanged(final String name) { + BackupManager.dataChanged(name); + } } diff --git a/main/src/cgeo/geocaching/compatibility/Compatibility.java b/main/src/cgeo/geocaching/compatibility/Compatibility.java index 48b553f..cbbfb15 100644 --- a/main/src/cgeo/geocaching/compatibility/Compatibility.java +++ b/main/src/cgeo/geocaching/compatibility/Compatibility.java @@ -43,4 +43,10 @@ public final class Compatibility { return Uri.parse(isLevel8 ? "content://com.android.calendar/events" : "content://calendar/events"); } + public static void dataChanged(final String name) { + if (isLevel8) { + level8.dataChanged(name); + } + } + } |
