안녕하세요? 

쉘 명령어 실행할때 보통 Runtime 의 exec() 함수를 사용하는데,,
여기서 실행하는거랑 Adb shell 에서 실행하는거랑 같지 않을까요? 

그런데, monkey 를 runtime.exec() 로 실행하면 안되고 
Adb shell 에서는 된다는게 잘 이해가 안가네요.. 어차피 실행권한은 user 로 동일한것 같은데.. 

ex) runtime.exec("monkey -p com.xxx.xxx -v 500") -> 오류
      (Adb shell 로 쉘 진입 후) monkey -p monkey -p com.xxx.xxx -v 500 -> 정상동작


[ runtime 으로 실행시 오류 message ]
 java.io.IOException: Error running exec(). Commands: ["monkey -p com.xxx.xxx -v 500] Working Directory: null Environment: [ANDROID_SOCKET_zygote=10, TMPDIR=/data/local/tmp, ANDROID_BOOTLOGO=1, EXTERNAL_STORAGE=/sdcard, ANDROID_ASSETS=/system/app, PATH=/sbin:/system/sbin:/system/bin:/system/xbin, ANDROID_DATA=/data, BOOTCLASSPATH=/system/framework/core.jar:/system/framework/ext.jar:/system/framework/framework.jar:/system/framework/android.policy.jar:/system/framework/services.jar, ANDROID_PROPERTY_WORKSPACE=9,32768, ANDROID_ROOT=/system, LD_LIBRARY_PATH=/system/lib:/system/lib/egl:/system/skt/skaf/lib:/system/skt/skaf/app/lib]

조언 부탁드립니다.