마스터Q&A 안드로이드는 안드로이드 개발자들의 질문과 답변을 위한 지식 커뮤니티 사이트입니다. 안드로이드펍에서 운영하고 있습니다. [사용법, 운영진]

runtime.exec 명령어 질문2

0 추천

adb shell 상에서 getevent | grep event1 명령어를 치면 실시간으로 event1이 작동하는 현황을 볼 수 있는데, 

이 내용을 제가 만들 어플리케이션에서 runtime.exec으로 실행하면 예외처리됩니다. 

제가 생각해보기론.. ls같은 명령어는 즉시 그 결과값이 나오기 때문에 어플리케이션에서 실행했을 시 크게 문제가 없는데 

getevent | grep event1 같은 명령어는 실시간으로 결과가 계속 나오기 때문에 그렇지 않나 싶네요.. 

 

이런 문제는 어떻게 해결해야하나요? 

보이저 (1,160 포인트) 님이 2016년 1월 20일 질문

2개의 답변

+1 추천
 
채택된 답변
쓰레드에서 실행하게끔 해보세요

그리고 어떤 예외처리가 되는지도 함께 올려주시는게 좋겠네요
Gradler (109,780 포인트) 님이 2016년 1월 21일 답변
보이저님이 2016년 1월 24일 채택됨
java.io.IOException: Permission denied이런 메세지가 뜨네요.  권한 상의 문제인 것 같습니다. run-as 명령어로 어플리케이션에서 실행해보기도 하고.. 매니페스트 파일에 퍼미션 등록을 안해서 그런건지 정확히 모르겠네요 ㅠㅠ..
실행하려는 파일의 권한을 777(rwxrwxrwx)로 변경하니까 잘 됩니다. 쓰레드로 돌려봐야겠네요 감사힙니다.
0 추천
adb shell은 일반 앱보다 더 높은 권한으로 실행됩니다.

일반 앱에서는 실행할 수 없는 기능도 실행할 수 있습니다.

무슨 exception이 나오는지 확인해보세요.
익명사용자 님이 2016년 1월 21일 답변
...