diff options
-rw-r--r-- | gallerycommon/src/com/android/gallery3d/common/ApiHelper.java | 70 | ||||
-rw-r--r-- | src/com/android/gallery3d/app/GalleryActivity.java | 20 | ||||
-rw-r--r-- | src/com/android/gallery3d/filtershow/filters/SimpleMakeupImageFilter.java | 3 | ||||
-rw-r--r-- | src/com/android/gallery3d/ui/TimeLineSlotView.java | 8 | ||||
-rw-r--r--[-rwxr-xr-x] | src/org/codeaurora/gallery3d/video/SettingsActivity.java | 39 |
5 files changed, 96 insertions, 44 deletions
diff --git a/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java b/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java index f4de5c9ff..1c3ffcd67 100644 --- a/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java +++ b/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java @@ -25,6 +25,8 @@ import android.view.View; import android.view.WindowManager; import java.lang.reflect.Field; +import java.lang.reflect.InvocationTargetException; +import java.lang.reflect.Method; public class ApiHelper { public static interface VERSION_CODES { @@ -231,4 +233,72 @@ public class ApiHelper { return false; } } + + private static Class<?> getClassForName(String className) { + Class<?> klass = null; + try { + klass = Class.forName(className); + } catch (ClassNotFoundException e) { + e.printStackTrace(); + } + return klass; + } + + private static Method getMethod(Class<?> klass, String name, Class<?>... parameterTypes) { + Method method = null; + if (klass != null) { + try { + method = klass.getMethod(name, parameterTypes); + } catch (NoSuchMethodException e) { + e.printStackTrace(); + } + } + return method; + } + + private static Object invoke(Method method, Object receiver, Object... args) { + Object obj = null; + if (method != null) { + try { + obj = method.invoke(receiver, args); + } catch (IllegalAccessException | InvocationTargetException e) { + e.printStackTrace(); + } + } + return obj; + } + + public static class SystemProperties { + private static final Method getIntMethod; + private static final Method getBooleanMethod; + private static final Method getMethod; + private static final Method setMethod; + + static { + Class<?> klass = getClassForName("android.os.SystemProperties"); + getIntMethod = getMethod(klass, "getInt", String.class, int.class); + getBooleanMethod = getMethod(klass, "getBoolean", String.class, boolean.class); + getMethod = getMethod(klass, "get", String.class, String.class); + setMethod = getMethod(klass, "set", String.class, String.class); + } + + public static int getInt(String key, int def) { + Object obj = invoke(getIntMethod, null, key, def); + return obj == null ? def : (Integer) obj; + } + + public static boolean getBoolean(String key, boolean def) { + Object obj = invoke(getBooleanMethod, null, key, def); + return obj == null ? def : (Boolean) obj; + } + + public static String get(String key, String def) { + Object obj = invoke(getMethod, null, key, def); + return obj == null ? def : (String) obj; + } + + public static void set(String key, String val) { + invoke(setMethod, null, key, val); + } + } } diff --git a/src/com/android/gallery3d/app/GalleryActivity.java b/src/com/android/gallery3d/app/GalleryActivity.java index fd233e5f9..9f3c5f493 100644 --- a/src/com/android/gallery3d/app/GalleryActivity.java +++ b/src/com/android/gallery3d/app/GalleryActivity.java @@ -19,8 +19,7 @@ package com.android.gallery3d.app; -import java.util.Locale; -import android.os.Handler; +import android.Manifest; import android.app.Dialog; import android.content.ContentResolver; import android.content.ContentUris; @@ -32,40 +31,34 @@ import android.content.pm.PackageManager; import android.database.Cursor; import android.graphics.Bitmap; import android.graphics.BitmapFactory; -import android.Manifest; import android.net.Uri; import android.os.Bundle; import android.os.Handler; import android.os.Message; -import android.os.SystemProperties; import android.provider.MediaStore; +import android.support.v4.widget.DrawerLayout; +import android.support.v4.widget.DrawerLayout.DrawerListener; import android.text.TextUtils; import android.util.Log; import android.view.Gravity; import android.view.InputDevice; import android.view.LayoutInflater; -import android.view.MenuItem; import android.view.MotionEvent; import android.view.View; +import android.view.View.OnClickListener; import android.view.ViewGroup; import android.view.Window; import android.view.WindowManager; -import android.view.View.OnClickListener; import android.widget.AdapterView; import android.widget.BaseAdapter; -import android.widget.FrameLayout; import android.widget.ImageView; import android.widget.ListView; import android.widget.TextView; import android.widget.Toast; import android.widget.Toolbar; -import android.widget.Toolbar.OnMenuItemClickListener; -import android.support.v4.widget.DrawerLayout; -import android.support.v4.widget.DrawerLayout.DrawerListener; -import android.text.TextUtils; -import java.util.ArrayList; import org.codeaurora.gallery.R; +import com.android.gallery3d.common.ApiHelper.SystemProperties; import com.android.gallery3d.common.Utils; import com.android.gallery3d.data.DataManager; import com.android.gallery3d.data.MediaItem; @@ -80,6 +73,9 @@ import com.android.gallery3d.util.GalleryUtils; import com.android.gallery3d.util.ThreadPool.Job; import com.android.gallery3d.util.ThreadPool.JobContext; +import java.util.ArrayList; +import java.util.Locale; + public final class GalleryActivity extends AbstractGalleryActivity implements OnCancelListener { public static final String EXTRA_SLIDESHOW = "slideshow"; public static final String EXTRA_DREAM = "dream"; diff --git a/src/com/android/gallery3d/filtershow/filters/SimpleMakeupImageFilter.java b/src/com/android/gallery3d/filtershow/filters/SimpleMakeupImageFilter.java index c8a05ae38..3a31b4bfa 100644 --- a/src/com/android/gallery3d/filtershow/filters/SimpleMakeupImageFilter.java +++ b/src/com/android/gallery3d/filtershow/filters/SimpleMakeupImageFilter.java @@ -20,6 +20,7 @@ package com.android.gallery3d.filtershow.filters; import android.graphics.Bitmap; import android.util.Log; +import com.android.gallery3d.common.ApiHelper.SystemProperties; import com.thundersoft.hz.selfportrait.detect.FaceDetect; import com.thundersoft.hz.selfportrait.detect.FaceInfo; @@ -27,7 +28,7 @@ public abstract class SimpleMakeupImageFilter extends SimpleImageFilter { private static final String LOGTAG = "SimpleMakeupImageFilter"; protected static final int MAKEUP_INTENSITY = 50; - public static final boolean HAS_TS_MAKEUP = android.os.SystemProperties.getBoolean("persist.ts.postmakeup", true); + public static final boolean HAS_TS_MAKEUP = SystemProperties.getBoolean("persist.ts.postmakeup", true); public SimpleMakeupImageFilter() { } diff --git a/src/com/android/gallery3d/ui/TimeLineSlotView.java b/src/com/android/gallery3d/ui/TimeLineSlotView.java index 81fc3a57c..bac5a0e4d 100644 --- a/src/com/android/gallery3d/ui/TimeLineSlotView.java +++ b/src/com/android/gallery3d/ui/TimeLineSlotView.java @@ -20,8 +20,6 @@ package com.android.gallery3d.ui; import android.graphics.Rect; import android.text.TextUtils; -import android.util.Log; -import android.os.SystemProperties; import android.view.GestureDetector; import android.view.MotionEvent; import android.view.View; @@ -29,14 +27,10 @@ import android.view.animation.DecelerateInterpolator; import com.android.gallery3d.anim.Animation; import com.android.gallery3d.app.AbstractGalleryActivity; +import com.android.gallery3d.common.ApiHelper.SystemProperties; import com.android.gallery3d.common.Utils; -import com.android.gallery3d.data.MediaItem; -import com.android.gallery3d.data.MediaObject; import com.android.gallery3d.glrenderer.GLCanvas; -import java.util.ArrayList; -import java.util.Arrays; -import java.util.HashMap; import java.util.Locale; public class TimeLineSlotView extends GLView { diff --git a/src/org/codeaurora/gallery3d/video/SettingsActivity.java b/src/org/codeaurora/gallery3d/video/SettingsActivity.java index b9f594e8c..5928846a5 100755..100644 --- a/src/org/codeaurora/gallery3d/video/SettingsActivity.java +++ b/src/org/codeaurora/gallery3d/video/SettingsActivity.java @@ -1,33 +1,24 @@ package org.codeaurora.gallery3d.video; import android.app.ActionBar; -import android.app.Activity; -import android.content.Context; import android.content.Intent; import android.content.SharedPreferences; -import android.database.Cursor; import android.net.Uri; import android.os.Bundle; -import android.os.SystemProperties; -import android.preference.CheckBoxPreference; import android.preference.EditTextPreference; -import android.preference.ListPreference; import android.preference.Preference; import android.preference.PreferenceActivity; -import android.preference.PreferenceCategory; -import android.preference.RingtonePreference; import android.preference.PreferenceScreen; -import android.provider.ContactsContract; import android.provider.Settings; import android.provider.Settings.System; -import android.provider.Telephony; import android.telephony.TelephonyManager; import android.text.method.DigitsKeyListener; import android.util.Log; -import android.view.KeyEvent; import android.view.MenuItem; import org.codeaurora.gallery.R; +import com.android.gallery3d.common.ApiHelper.SystemProperties; + import java.util.ArrayList; public class SettingsActivity extends PreferenceActivity { @@ -48,17 +39,17 @@ public class SettingsActivity extends PreferenceActivity { private static final int DEFAULT_CACHE_MIN_SIZE = 4 * 1024 * 1024; private static final int DEFAULT_CACHE_MAX_SIZE = 20 * 1024 * 1024; private static final int DEFAULT_KEEP_ALIVE_INTERVAL_SECOND = 15; - + private static final int RTP_MIN_PORT = 1; private static final int RTP_MAX_PORT = 2; private static final int BUFFER_SIZE = 3; - + private SharedPreferences mPref; private EditTextPreference mRtpMinPort; private EditTextPreference mRtpMaxPort; private EditTextPreference mBufferSize; private PreferenceScreen mApn; - + private static final int SELECT_APN = 1; public static final String PREFERRED_APN_URI = "content://telephony/carriers/preferapn"; private static final Uri PREFERAPN_URI = Uri.parse(PREFERRED_APN_URI); @@ -80,7 +71,7 @@ public class SettingsActivity extends PreferenceActivity { mRtpMaxPort = (EditTextPreference) findPreference(PREFERENCE_RTP_MAXPORT); mBufferSize = (EditTextPreference) findPreference(PREFERENCE_BUFFER_SIZE); mApn = (PreferenceScreen) findPreference(PREFERENCE_APN); - + setPreferenceListener(RTP_MIN_PORT, mRtpMinPort); setPreferenceListener(RTP_MAX_PORT, mRtpMaxPort); setPreferenceListener(BUFFER_SIZE, mBufferSize); @@ -91,7 +82,7 @@ public class SettingsActivity extends PreferenceActivity { ab.setDisplayHomeAsUpEnabled(true); ab.setTitle(R.string.setting); } - + @Override public void onActivityResult(int requestCode, int resultCode, Intent data) { if (requestCode == SELECT_APN) { @@ -139,7 +130,7 @@ public class SettingsActivity extends PreferenceActivity { } private void enableRtpPortSetting() { - final String rtpMinPortStr = mPref.getString(PREFERENCE_RTP_MINPORT, + final String rtpMinPortStr = mPref.getString(PREFERENCE_RTP_MINPORT, Integer.toString(DEFAULT_RTP_MINPORT)); final String rtpMaxPortStr = mPref.getString(PREFERENCE_RTP_MAXPORT, Integer.toString(DEFAULT_RTP_MAXPORT)); @@ -150,7 +141,7 @@ public class SettingsActivity extends PreferenceActivity { } private void enableBufferSetting() { - final String bufferSizeStr = mPref.getString(PREFERENCE_BUFFER_SIZE, + final String bufferSizeStr = mPref.getString(PREFERENCE_BUFFER_SIZE, Integer.toString(DEFAULT_CACHE_MAX_SIZE)); final int cacheMaxSize; final String ACTION_NAME = "org.codeaurora.gallery3d.video.STREAMING_SETTINGS_ENABLER"; @@ -166,7 +157,7 @@ public class SettingsActivity extends PreferenceActivity { Log.v(LOG_TAG, "set system property " + CACHE_PROPERTY_NAME + " : " + propertyValue); SystemProperties.set(CACHE_PROPERTY_NAME, propertyValue); } - + private void setPreferenceListener(final int which, final EditTextPreference etp) { final String DIGITS_ACCEPTABLE = "0123456789"; @@ -180,20 +171,20 @@ public class SettingsActivity extends PreferenceActivity { summaryStr = "streaming_min_udp_port"; break; case RTP_MAX_PORT: - preferStr = mPref.getString(PREFERENCE_RTP_MAXPORT, + preferStr = mPref.getString(PREFERENCE_RTP_MAXPORT, Integer.toString(DEFAULT_RTP_MAXPORT)); summaryStr = "streaming_max_udp_port"; break; case BUFFER_SIZE: - preferStr = mPref.getString(PREFERENCE_BUFFER_SIZE, + preferStr = mPref.getString(PREFERENCE_BUFFER_SIZE, Integer.toString(DEFAULT_CACHE_MAX_SIZE)); break; default: return; - + } - final String summaryString = summaryStr; + final String summaryString = summaryStr; etp.getEditText().setKeyListener(DigitsKeyListener.getInstance(DIGITS_ACCEPTABLE)); etp.setSummary(preferStr); etp.setText(preferStr); @@ -221,7 +212,7 @@ public class SettingsActivity extends PreferenceActivity { }); } - + private void setApnListener() { final String SUBSCRIPTION_KEY = "subscription"; final String SUB_ID = "sub_id"; |