summaryrefslogtreecommitdiff
diff options
context:
space:
mode:
-rw-r--r--core/java/android/os/Environment.java21
1 files changed, 11 insertions, 10 deletions
diff --git a/core/java/android/os/Environment.java b/core/java/android/os/Environment.java
index cc956428fb5a..904b2e940a4d 100644
--- a/core/java/android/os/Environment.java
+++ b/core/java/android/os/Environment.java
@@ -20,22 +20,19 @@ import java.io.File;
import android.content.res.Resources;
import android.os.storage.IMountService;
+import android.util.Log;
/**
* Provides access to environment variables.
*/
public class Environment {
+ private static final String TAG = "Environment";
private static final File ROOT_DIRECTORY
= getDirectory("ANDROID_ROOT", "/system");
private static final String SYSTEM_PROPERTY_EFS_ENABLED = "persist.security.efs.enabled";
- private static class MountServiceHolder {
- static IMountService mSingleton = IMountService.Stub.asInterface(ServiceManager
- .getService("mount"));
- }
-
private static final Object mLock = new Object();
private volatile static Boolean mIsExternalStorageEmulated = null;
@@ -401,7 +398,9 @@ public class Environment {
*/
public static String getExternalStorageState() {
try {
- return MountServiceHolder.mSingleton.getVolumeState(getExternalStorageDirectory()
+ IMountService mountService = IMountService.Stub.asInterface(ServiceManager
+ .getService("mount"));
+ return mountService.getVolumeState(getExternalStorageDirectory()
.toString());
} catch (Exception rex) {
return Environment.MEDIA_REMOVED;
@@ -433,12 +432,14 @@ public class Environment {
if (mIsExternalStorageEmulated == null) {
boolean externalStorageEmulated;
try {
- externalStorageEmulated =
- MountServiceHolder.mSingleton.isExternalStorageEmulated();
+ IMountService mountService = IMountService.Stub.asInterface(ServiceManager
+ .getService("mount"));
+ externalStorageEmulated = mountService.isExternalStorageEmulated();
+ mIsExternalStorageEmulated = Boolean.valueOf(externalStorageEmulated);
} catch (Exception e) {
- externalStorageEmulated = false;
+ Log.e(TAG, "couldn't talk to MountService", e);
+ return false;
}
- mIsExternalStorageEmulated = Boolean.valueOf(externalStorageEmulated);
}
}
}