summaryrefslogtreecommitdiffstats
path: root/gallerycommon/src
diff options
context:
space:
mode:
authorOwen Lin <owenlin@google.com>2012-07-04 15:48:59 +0800
committerOwen Lin <owenlin@google.com>2012-07-05 14:05:21 +0800
commitfdccf988358df08f711a98aa79d3dbda44141ce4 (patch)
tree40fa8acf0ff3bf407b1a1bf931e49bde0f9b04f9 /gallerycommon/src
parent2842c13febedd5a4fe5cf06ada8418d0098a5d6d (diff)
downloadandroid_packages_apps_Snap-fdccf988358df08f711a98aa79d3dbda44141ce4.tar.gz
android_packages_apps_Snap-fdccf988358df08f711a98aa79d3dbda44141ce4.tar.bz2
android_packages_apps_Snap-fdccf988358df08f711a98aa79d3dbda44141ce4.zip
Don't use invalidateOptionsMenu before API level 11.
Change-Id: If46d46e44797b2bd4f66235eca0954a55d0008cf
Diffstat (limited to 'gallerycommon/src')
-rw-r--r--gallerycommon/src/com/android/gallery3d/common/ApiHelper.java16
1 files changed, 15 insertions, 1 deletions
diff --git a/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java b/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java
index 4545b92f3..305fb2cf3 100644
--- a/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java
+++ b/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java
@@ -16,6 +16,7 @@
package com.android.gallery3d.common;
+import android.app.Activity;
import android.os.Build;
import android.provider.MediaStore.MediaColumns;
import android.view.View;
@@ -60,6 +61,9 @@ public class ApiHelper {
public static final boolean HAS_AUTO_FOCUS_MOVE_CALLBACK =
Build.VERSION.SDK_INT >= VERSION_CODES.JELLY_BEAN;
+ public static final boolean HAS_ACTIVITY_INVALIDATE_OPTIONS_MENU =
+ hasMethod(Activity.class, "invalidateOptionsMenu");
+
private static boolean hasField(Class<?> klass, String fieldName) {
try {
klass.getDeclaredField(fieldName);
@@ -72,11 +76,21 @@ public class ApiHelper {
private static boolean hasMethod(String className, String methodName,
Class<?>... parameterTypes) {
try {
- Class klass = Class.forName(className);
+ Class<?> klass = Class.forName(className);
klass.getDeclaredMethod(methodName, parameterTypes);
return true;
} catch (Throwable th) {
return false;
}
}
+
+ private static boolean hasMethod(
+ Class<?> klass, String methodName, Class<?> ... paramTypes) {
+ try {
+ klass.getDeclaredMethod(methodName, paramTypes);
+ return true;
+ } catch (NoSuchMethodException e) {
+ return false;
+ }
+ }
}