diff options
author | daniel oeh <daniel.oeh@gmail.com> | 2012-07-09 22:14:36 +0200 |
---|---|---|
committer | daniel oeh <daniel.oeh@gmail.com> | 2012-07-09 22:14:36 +0200 |
commit | 63c76b80f8742c3c59f67f596a8bc26d098846f9 (patch) | |
tree | 4f866b13666b50b3edd9a56183745c6e9b81d348 /src | |
parent | d1c73645c4829f6e2f33e355ef9120887944b3de (diff) | |
download | AntennaPod-63c76b80f8742c3c59f67f596a8bc26d098846f9.zip |
Fixed bugs in the noStorage error handler
Diffstat (limited to 'src')
-rw-r--r-- | src/de/podfetcher/activity/StorageErrorActivity.java | 27 |
1 files changed, 21 insertions, 6 deletions
diff --git a/src/de/podfetcher/activity/StorageErrorActivity.java b/src/de/podfetcher/activity/StorageErrorActivity.java index 830f03902..0ffd01457 100644 --- a/src/de/podfetcher/activity/StorageErrorActivity.java +++ b/src/de/podfetcher/activity/StorageErrorActivity.java @@ -10,10 +10,11 @@ import android.util.Log; import com.actionbarsherlock.app.SherlockActivity; import de.podfetcher.R; +import de.podfetcher.util.StorageUtils; public class StorageErrorActivity extends SherlockActivity { private static final String TAG = "StorageErrorActivity"; - + @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); @@ -23,15 +24,29 @@ public class StorageErrorActivity extends SherlockActivity { @Override protected void onPause() { super.onPause(); - unregisterReceiver(mediaUpdate); + try { + unregisterReceiver(mediaUpdate); + } catch (IllegalArgumentException e) { + + } } @Override protected void onResume() { super.onResume(); - registerReceiver(mediaUpdate, new IntentFilter(Intent.ACTION_MEDIA_MOUNTED)); + if (StorageUtils.storageAvailable()) { + leaveErrorState(); + } else { + registerReceiver(mediaUpdate, new IntentFilter( + Intent.ACTION_MEDIA_MOUNTED)); + } } + private void leaveErrorState() { + finish(); + startActivity(new Intent(this, PodfetcherActivity.class)); + } + private BroadcastReceiver mediaUpdate = new BroadcastReceiver() { @Override @@ -39,13 +54,13 @@ public class StorageErrorActivity extends SherlockActivity { if (intent.getAction().equals(Intent.ACTION_MEDIA_MOUNTED)) { if (intent.getBooleanExtra("read-only", true)) { Log.d(TAG, "Media was mounted; Finishing activity"); - finish(); + leaveErrorState(); } else { Log.d(TAG, "Media seemed to have been mounted read only"); } } } - + }; - + } |