summaryrefslogtreecommitdiffstats
path: root/src/com/cyanogenmod/eleven/ElevenApplication.java
diff options
context:
space:
mode:
authorlinus_lee <llee@cyngn.com>2014-11-20 16:39:38 -0800
committerlinus_lee <llee@cyngn.com>2014-12-09 12:23:20 -0800
commit71810ebb2bf8fd792c92487fe87f9dbebefc8541 (patch)
tree42a4d11ba03a4c7af843edc0b45375b17c64053c /src/com/cyanogenmod/eleven/ElevenApplication.java
parentf199f983c9a5e2f4434b85273d1da0d609c33228 (diff)
downloadandroid_packages_apps_Eleven-71810ebb2bf8fd792c92487fe87f9dbebefc8541.tar.gz
android_packages_apps_Eleven-71810ebb2bf8fd792c92487fe87f9dbebefc8541.tar.bz2
android_packages_apps_Eleven-71810ebb2bf8fd792c92487fe87f9dbebefc8541.zip
Update Eleven headers and namespace for open source
Change-Id: I82caf2ebf991998e67f546ff2ac7eaf2b30dc6be
Diffstat (limited to 'src/com/cyanogenmod/eleven/ElevenApplication.java')
-rw-r--r--src/com/cyanogenmod/eleven/ElevenApplication.java66
1 files changed, 66 insertions, 0 deletions
diff --git a/src/com/cyanogenmod/eleven/ElevenApplication.java b/src/com/cyanogenmod/eleven/ElevenApplication.java
new file mode 100644
index 0000000..09d639e
--- /dev/null
+++ b/src/com/cyanogenmod/eleven/ElevenApplication.java
@@ -0,0 +1,66 @@
+/*
+ * Copyright (C) 2012 Andrew Neal
+ * Copyright (C) 2014 The CyanogenMod Project
+ * Licensed under the Apache License, Version 2.0
+ * (the "License"); you may not use this file except in compliance with the
+ * License. You may obtain a copy of the License at
+ * http://www.apache.org/licenses/LICENSE-2.0 Unless required by applicable law
+ * or agreed to in writing, software distributed under the License is
+ * distributed on an "AS IS" BASIS, WITHOUT WARRANTIES OR CONDITIONS OF ANY
+ * KIND, either express or implied. See the License for the specific language
+ * governing permissions and limitations under the License.
+ */
+
+package com.cyanogenmod.eleven;
+
+import android.app.Application;
+import android.os.StrictMode;
+
+import com.cyanogenmod.eleven.cache.ImageCache;
+
+import java.util.logging.Level;
+import java.util.logging.Logger;
+
+/**
+ * Used to turn off logging for jaudiotagger and free up memory when
+ * {@code #onLowMemory()} is called on pre-ICS devices. On post-ICS memory is
+ * released within {@link ImageCache}.
+ *
+ * @author Andrew Neal (andrewdneal@gmail.com)
+ */
+public class ElevenApplication extends Application {
+ private static final boolean DEBUG = false;
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void onCreate() {
+ // Enable strict mode logging
+ enableStrictMode();
+ // Turn off logging for jaudiotagger.
+ Logger.getLogger("org.jaudiotagger").setLevel(Level.OFF);
+ }
+
+ /**
+ * {@inheritDoc}
+ */
+ @Override
+ public void onLowMemory() {
+ ImageCache.getInstance(this).evictAll();
+ super.onLowMemory();
+ }
+
+ private void enableStrictMode() {
+ if (DEBUG) {
+ final StrictMode.ThreadPolicy.Builder threadPolicyBuilder = new StrictMode.ThreadPolicy.Builder()
+ .detectAll().penaltyLog();
+ final StrictMode.VmPolicy.Builder vmPolicyBuilder = new StrictMode.VmPolicy.Builder()
+ .detectAll().penaltyLog();
+
+ threadPolicyBuilder.penaltyFlashScreen();
+ StrictMode.setThreadPolicy(threadPolicyBuilder.build());
+ StrictMode.setVmPolicy(vmPolicyBuilder.build());
+ }
+ }
+}