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

안드로이드 어플로 Shell Command 실행하고 싶습니다.

0 추천
Runtime runtime = Runtime.getRuntime();
  Process process;
  
  try 
  {

   String cmd = "ls";
   process = runtime.exec(cmd);
   BufferedReader br = 
     new BufferedReader(new InputStreamReader(process.getInputStream()));

   String line = "";
   while ((line = br.readLine()) != null) 
   {
    System.out.println(line);
   }
   br.close();
  } 
  
  catch (Exception e)
  {
   e.fillInStackTrace();
   Log.e("Process Manager", "Unable to execute top command");
  }

 

저는 지금 안드로이드 소스로 Shell 프롬프트 Command 실행과 출력을 안드로이드 디스플레이로 하려고 하고 있습니다.

c언어는 조금 해봤으나 안드로이드와 자바는 초보라 인터넷에 나와 있는 소스코드를 어떻게 적용해야 하는지 몰라서 소스

코드가 제대로 인지 디스플레이가 안되는지조차 판단이 안되고 있습니다.

 

 실행하면 텍스트 창 그대로 나오며

MainActivity에 넣어야하는지 xml 이나 manifest의 설정은 어떻게 해야하는건지 중심 좀 잡아주세요 ㅜ

이현민 (120 포인트) 님이 2013년 4월 12일 질문

1개의 답변

0 추천
소스는 문제가없구요. 로그보는법을 아직 잘모르시는듯해서 소스를 통으로 드릴게요,

 

public class MainActivity extends Activity {

 @Override
 protected void onCreate(Bundle savedInstanceState) {
  super.onCreate(savedInstanceState);
  setContentView(R.layout.activity_main);
  
  Runtime runtime = Runtime.getRuntime();
  Process process;    
  try  {   
   String cmd = "ls";  
   process = runtime.exec(cmd);  
   BufferedReader br = new BufferedReader(new InputStreamReader(process.getInputStream()));   
   String line = "";  
   StringBuffer sb = new StringBuffer();
   while ((line = br.readLine()) != null)    {
    sb.append(line + "\n");
   }  
   
   Toast.makeText(this, sb.toString(), Toast.LENGTH_LONG).show();
   br.close();
  
  } catch (Exception e)  {  
   e.fillInStackTrace();
   Log.e("Process Manager", "Unable to execute top command");
  }
  
 }

 

}

도움되셧길 바랍니다,,
익명사용자 님이 2013년 4월 12일 답변
...