Disable USB connection type when monkeys are running.
Bug: 5375336
Also use the correct API for testing if monkeys are running.
(ActivityManager.isUserAMonkey())
Bug: 5375910
Change-Id: I2bf8e061ee5977d521de197d3a92095c1a98218d
diff --git a/src/com/android/settings/Utils.java b/src/com/android/settings/Utils.java
index 90336e2..ac6cb64 100644
--- a/src/com/android/settings/Utils.java
+++ b/src/com/android/settings/Utils.java
@@ -16,6 +16,7 @@
package com.android.settings;
+import android.app.ActivityManager;
import android.content.Context;
import android.content.Intent;
import android.content.pm.ApplicationInfo;
@@ -278,7 +279,7 @@
* Returns true if Monkey is running.
*/
public static boolean isMonkeyRunning() {
- return SystemProperties.getBoolean("ro.monkey", false);
+ return ActivityManager.isUserAMonkey();
}
/**
diff --git a/src/com/android/settings/deviceinfo/UsbSettings.java b/src/com/android/settings/deviceinfo/UsbSettings.java
index 538cde7..c8671b9 100644
--- a/src/com/android/settings/deviceinfo/UsbSettings.java
+++ b/src/com/android/settings/deviceinfo/UsbSettings.java
@@ -34,6 +34,7 @@
import com.android.settings.R;
import com.android.settings.SettingsPreferenceFragment;
+import com.android.settings.Utils;
/**
* USB storage settings.
@@ -111,6 +112,11 @@
@Override
public boolean onPreferenceTreeClick(PreferenceScreen preferenceScreen, Preference preference) {
+ // Don't allow any changes to take effect as the USB host will be disconnected, killing
+ // the monkeys
+ if (Utils.isMonkeyRunning()) {
+ return true;
+ }
// temporary hack - using check boxes as radio buttons
// don't allow unchecking them
if (preference instanceof CheckBoxPreference) {