From acbda70e28b768b5977ec7a0ec63981b2aeeac16 Mon Sep 17 00:00:00 2001 From: Martin Fietz Date: Fri, 19 Feb 2016 13:34:55 +0100 Subject: Make sure DB helpers and preferences are initialized --- .../main/java/de/danoeh/antennapod/PodcastApp.java | 12 +-- .../java/de/danoeh/antennapod/UpdateManager.java | 97 ---------------------- .../receiver/ConnectivityActionReceiver.java | 4 +- .../receiver/PowerConnectionReceiver.java | 4 +- .../de/danoeh/antennapod/receiver/SPAReceiver.java | 1 + 5 files changed, 9 insertions(+), 109 deletions(-) delete mode 100644 app/src/main/java/de/danoeh/antennapod/UpdateManager.java (limited to 'app/src/main/java/de') diff --git a/app/src/main/java/de/danoeh/antennapod/PodcastApp.java b/app/src/main/java/de/danoeh/antennapod/PodcastApp.java index 829a49a15..f6a8db5fb 100644 --- a/app/src/main/java/de/danoeh/antennapod/PodcastApp.java +++ b/app/src/main/java/de/danoeh/antennapod/PodcastApp.java @@ -8,11 +8,8 @@ import com.joanzapata.iconify.Iconify; import com.joanzapata.iconify.fonts.FontAwesomeModule; import com.joanzapata.iconify.fonts.MaterialModule; +import de.danoeh.antennapod.core.ClientConfig; import de.danoeh.antennapod.core.feed.EventDistributor; -import de.danoeh.antennapod.core.preferences.PlaybackPreferences; -import de.danoeh.antennapod.core.preferences.UserPreferences; -import de.danoeh.antennapod.core.storage.PodDBAdapter; -import de.danoeh.antennapod.core.util.NetworkUtils; import de.danoeh.antennapod.spa.SPAUtil; /** Main application class. */ @@ -56,11 +53,8 @@ public class PodcastApp extends Application { singleton = this; - PodDBAdapter.init(this); - UserPreferences.init(this); - UpdateManager.init(this); - PlaybackPreferences.init(this); - NetworkUtils.init(this); + ClientConfig.initialize(this); + EventDistributor.getInstance(); Iconify.with(new FontAwesomeModule()); Iconify.with(new MaterialModule()); diff --git a/app/src/main/java/de/danoeh/antennapod/UpdateManager.java b/app/src/main/java/de/danoeh/antennapod/UpdateManager.java deleted file mode 100644 index 0b3c43381..000000000 --- a/app/src/main/java/de/danoeh/antennapod/UpdateManager.java +++ /dev/null @@ -1,97 +0,0 @@ -package de.danoeh.antennapod; - - -import android.content.Context; -import android.content.SharedPreferences; -import android.content.pm.PackageInfo; -import android.content.pm.PackageManager; -import android.os.Build; -import android.util.Log; - -import org.antennapod.audio.MediaPlayer; - -import java.io.File; -import java.util.List; - -import de.danoeh.antennapod.core.feed.Feed; -import de.danoeh.antennapod.core.feed.FeedImage; -import de.danoeh.antennapod.core.feed.FeedItem; -import de.danoeh.antennapod.core.preferences.UserPreferences; -import de.danoeh.antennapod.core.storage.DBReader; -import de.danoeh.antennapod.core.storage.DBWriter; - -/* - * This class's job is do perform maintenance tasks whenever the app has been updated - */ -public class UpdateManager { - - public static final String TAG = UpdateManager.class.getSimpleName(); - - private static final String PREF_NAME = "app_version"; - private static final String KEY_VERSION_CODE = "version_code"; - - private static int currentVersionCode; - - private static Context context; - private static SharedPreferences prefs; - - public static void init(Context context) { - UpdateManager.context = context; - prefs = context.getSharedPreferences(PREF_NAME, Context.MODE_PRIVATE); - PackageManager pm = context.getPackageManager(); - try { - PackageInfo info = pm.getPackageInfo(context.getPackageName(), 0); - currentVersionCode = info.versionCode; - } catch (PackageManager.NameNotFoundException e) { - Log.e(TAG, "Failed to obtain package info for package name: " + context.getPackageName(), e); - currentVersionCode = 0; - return; - } - final int oldVersionCode = getStoredVersionCode(); - Log.d(TAG, "old: " + oldVersionCode + ", current: " + currentVersionCode); - if(oldVersionCode < currentVersionCode) { - onUpgrade(oldVersionCode, currentVersionCode); - setCurrentVersionCode(); - } - } - - public static int getStoredVersionCode() { - return prefs.getInt(KEY_VERSION_CODE, -1); - } - - public static void setCurrentVersionCode() { - prefs.edit().putInt(KEY_VERSION_CODE, currentVersionCode).apply(); - } - - private static void onUpgrade(final int oldVersionCode, final int newVersionCode) { - if(oldVersionCode < 1030099) { - // delete the now obsolete image cache - // from now on, Glide will handle caching images - new Thread() { - public void run() { - List feeds = DBReader.getFeedList(); - for (Feed podcast : feeds) { - List episodes = DBReader.getFeedItemList(podcast); - for (FeedItem episode : episodes) { - FeedImage image = episode.getImage(); - if (image != null && image.isDownloaded() && image.getFile_url() != null) { - File imageFile = new File(image.getFile_url()); - if (imageFile.exists()) { - imageFile.delete(); - } - image.setFile_url(null); // calls setDownloaded(false) - DBWriter.setFeedImage(image); - } - } - } - } - }.start(); - } - if(oldVersionCode < 1050004) { - if(MediaPlayer.isPrestoLibraryInstalled(context) && Build.VERSION.SDK_INT >= 16) { - UserPreferences.enableSonic(true); - } - } - } - -} diff --git a/app/src/main/java/de/danoeh/antennapod/receiver/ConnectivityActionReceiver.java b/app/src/main/java/de/danoeh/antennapod/receiver/ConnectivityActionReceiver.java index 665ddc3b5..1075117dd 100644 --- a/app/src/main/java/de/danoeh/antennapod/receiver/ConnectivityActionReceiver.java +++ b/app/src/main/java/de/danoeh/antennapod/receiver/ConnectivityActionReceiver.java @@ -8,6 +8,7 @@ import android.net.NetworkInfo; import android.text.TextUtils; import android.util.Log; +import de.danoeh.antennapod.core.ClientConfig; import de.danoeh.antennapod.core.storage.DBTasks; import de.danoeh.antennapod.core.storage.DownloadRequester; import de.danoeh.antennapod.core.util.NetworkUtils; @@ -20,7 +21,8 @@ public class ConnectivityActionReceiver extends BroadcastReceiver { if (TextUtils.equals(intent.getAction(), ConnectivityManager.CONNECTIVITY_ACTION)) { Log.d(TAG, "Received intent"); - if (NetworkUtils.autodownloadNetworkAvailable()) { + ClientConfig.initialize(context); + if (NetworkUtils.autodownloadNetworkAvailable()) { Log.d(TAG, "auto-dl network available, starting auto-download"); DBTasks.autodownloadUndownloadedItems(context); } else { // if new network is Wi-Fi, finish ongoing downloads, diff --git a/app/src/main/java/de/danoeh/antennapod/receiver/PowerConnectionReceiver.java b/app/src/main/java/de/danoeh/antennapod/receiver/PowerConnectionReceiver.java index f050e031d..339a4f0f7 100644 --- a/app/src/main/java/de/danoeh/antennapod/receiver/PowerConnectionReceiver.java +++ b/app/src/main/java/de/danoeh/antennapod/receiver/PowerConnectionReceiver.java @@ -3,10 +3,9 @@ package de.danoeh.antennapod.receiver; import android.content.BroadcastReceiver; import android.content.Context; import android.content.Intent; -import android.os.BatteryManager; import android.util.Log; -import de.danoeh.antennapod.core.BuildConfig; +import de.danoeh.antennapod.core.ClientConfig; import de.danoeh.antennapod.core.preferences.UserPreferences; import de.danoeh.antennapod.core.storage.DBTasks; import de.danoeh.antennapod.core.storage.DownloadRequester; @@ -25,6 +24,7 @@ public class PowerConnectionReceiver extends BroadcastReceiver { Log.d(TAG, "charging intent: " + action); + ClientConfig.initialize(context); if (Intent.ACTION_POWER_CONNECTED.equals(action)) { Log.d(TAG, "charging, starting auto-download"); // we're plugged in, this is a great time to auto-download if everything else is diff --git a/app/src/main/java/de/danoeh/antennapod/receiver/SPAReceiver.java b/app/src/main/java/de/danoeh/antennapod/receiver/SPAReceiver.java index 8201fe3e2..02407a68b 100644 --- a/app/src/main/java/de/danoeh/antennapod/receiver/SPAReceiver.java +++ b/app/src/main/java/de/danoeh/antennapod/receiver/SPAReceiver.java @@ -49,6 +49,7 @@ public class SPAReceiver extends BroadcastReceiver{ } } else { Log.e(TAG, "Received invalid SP_APPS_QUERY_RESPONSE: Contains no extra"); + ClientConfig.initialize(context); } } } -- cgit v1.2.3