diff --git a/src/com/android/settings/deviceinfo/UsbModeChooserActivity.java b/src/com/android/settings/deviceinfo/UsbModeChooserActivity.java
index 76b2fd1..e0369d6 100644
--- a/src/com/android/settings/deviceinfo/UsbModeChooserActivity.java
+++ b/src/com/android/settings/deviceinfo/UsbModeChooserActivity.java
@@ -18,12 +18,14 @@
 
 import android.annotation.Nullable;
 import android.app.Activity;
+import android.app.ActivityManager;
 import android.app.AlertDialog;
 import android.content.Context;
 import android.content.DialogInterface;
 import android.hardware.usb.UsbManager;
 import android.os.Bundle;
 import android.util.Log;
+
 import com.android.settings.R;
 
 /**
@@ -46,7 +48,9 @@
                 new DialogInterface.OnClickListener() {
                     @Override
                     public void onClick(DialogInterface dialog, int which) {
-                        setCurrentFunction(which);
+                        if (!ActivityManager.isUserAMonkey()) {
+                            setCurrentFunction(which);
+                        }
                         dialog.dismiss();
                         UsbModeChooserActivity.this.finish();
                     }
