summaryrefslogtreecommitdiffstats
diff options
context:
space:
mode:
authorChenyang Zhang <Chenyang@codeaurora.org>2015-10-21 14:38:23 +0800
committerLinux Build Service Account <lnxbuild@localhost>2016-08-24 08:08:16 -0600
commitd5d93589e15a251d4850b69caaebcd8633dd65c9 (patch)
treef257aec5c3798a73580c264de841e6fdb3252f8f
parenteb71d264b945af99b7750b9baf8262199f44a6a8 (diff)
downloadandroid_packages_providers_MediaProvider-staging/cm-14.0-caf.tar.gz
android_packages_providers_MediaProvider-staging/cm-14.0-caf.tar.bz2
android_packages_providers_MediaProvider-staging/cm-14.0-caf.zip
MediaProvider: Support to scan carrier's media folderstaging/cm-14.0-caf
Support to scan regionalization carrier package's media folder. Conflicts: src/com/android/providers/media/MediaScannerService.java Change-Id: Ic7da8734222b488139090ef11a34da6b408c1708 CRs-Fixed: 1025803
-rw-r--r--src/com/android/providers/media/MediaScannerService.java21
1 files changed, 21 insertions, 0 deletions
diff --git a/src/com/android/providers/media/MediaScannerService.java b/src/com/android/providers/media/MediaScannerService.java
index dbd1c017..4135bc37 100644
--- a/src/com/android/providers/media/MediaScannerService.java
+++ b/src/com/android/providers/media/MediaScannerService.java
@@ -37,8 +37,11 @@ import android.os.storage.StorageManager;
import android.provider.MediaStore;
import android.util.Log;
+import com.android.internal.os.RegionalizationEnvironment;
+
import java.io.File;
import java.util.Arrays;
+import java.util.List;
public class MediaScannerService extends Service implements Runnable {
private static final String TAG = "MediaScannerService";
@@ -231,6 +234,24 @@ public class MediaScannerService extends Service implements Runnable {
Environment.getRootDirectory() + "/media",
Environment.getOemDirectory() + "/media",
};
+
+ if (RegionalizationEnvironment.isSupported()) {
+ final List<File> regionalizationDirs = RegionalizationEnvironment
+ .getAllPackageDirectories();
+ if (regionalizationDirs.size() > 0) {
+ String[] mediaDirs =
+ new String[directories.length + regionalizationDirs.size()];
+ for (int i = 0; i < directories.length; i++) {
+ mediaDirs[i] = directories[i];
+ }
+ int j = directories.length;
+ for (File f : regionalizationDirs) {
+ mediaDirs[j] = f.getAbsolutePath() + "/system/media";
+ j++;
+ }
+ directories = mediaDirs;
+ }
+ }
}
else if (MediaProvider.EXTERNAL_VOLUME.equals(volume)) {
// scan external storage volumes