From 04ebde7418493debda790f3eae933b5f6c38e897 Mon Sep 17 00:00:00 2001 From: Chih-Chung Chang Date: Tue, 3 Jul 2012 19:33:46 +0800 Subject: Use MTP only if the MTP API is available. Change-Id: I5c747d0da2905eb344c56dfab6333034dd5eecc3 --- gallerycommon/src/com/android/gallery3d/common/ApiHelper.java | 3 +++ src/com/android/gallery3d/data/DataManager.java | 5 ++++- 2 files changed, 7 insertions(+), 1 deletion(-) diff --git a/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java b/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java index a908e1591..c1724a825 100644 --- a/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java +++ b/gallerycommon/src/com/android/gallery3d/common/ApiHelper.java @@ -54,6 +54,9 @@ public class ApiHelper { "android.graphics.SurfaceTexture", "setDefaultBufferSize", int.class, int.class); + public static final boolean HAS_MTP = + Build.VERSION.SDK_INT >= VERSION_CODES.HONEYCOMB_MR1; + private static boolean hasField(Class klass, String fieldName) { try { klass.getDeclaredField(fieldName); diff --git a/src/com/android/gallery3d/data/DataManager.java b/src/com/android/gallery3d/data/DataManager.java index 85513279c..9ffdc0b50 100644 --- a/src/com/android/gallery3d/data/DataManager.java +++ b/src/com/android/gallery3d/data/DataManager.java @@ -23,6 +23,7 @@ import android.os.Handler; import android.support.v4.content.LocalBroadcastManager; import com.android.gallery3d.app.GalleryApp; +import com.android.gallery3d.common.ApiHelper; import com.android.gallery3d.common.Utils; import com.android.gallery3d.data.MediaSet.ItemConsumer; import com.android.gallery3d.data.MediaSource.PathId; @@ -115,7 +116,9 @@ public class DataManager { // the order matters, the UriSource must come last addSource(new LocalSource(mApplication)); addSource(new PicasaSource(mApplication)); - addSource(new MtpSource(mApplication)); + if (ApiHelper.HAS_MTP) { + addSource(new MtpSource(mApplication)); + } addSource(new ComboSource(mApplication)); addSource(new ClusterSource(mApplication)); addSource(new FilterSource(mApplication)); -- cgit v1.2.3