안녕하세요 ^^
1. 질문 )
Process를 이용하여 명령어를 입력한 후 텍스트뷰로 출력하려 합니다.
ls, ls -al 명령어는 잘 먹히고 잘 뿌려지는데
cd.. ,mkdir 등의 다른 명령어를 사용 후 리스트를 확인해봐도 출력되지 않고 같은 출력만 되고 있습니다.
코드 첨부하오니 잘못된 부분 좀 봐주셨으면 합니다!!
2. 질문)
명령어 busybox hdparm를 사용하려 하는데
사용 전제 조건에 android os루팅된 디바이스만 가능하나요?
이클립스 안드로이드 프로젝트 manifest.xml 퍼미션 부분에서 권한부여 가능한지 자세히 좀 알고 싶어요 ㅜ
3. 질문)
터미널 같은 app을 만들기 위해서 기반으로 참조할 정보를 아시면 댓글 좀 달아주세요 ㅜㅜ.
package kr.co.example.process_test;
import java.io.BufferedReader;
import java.io.InputStreamReader;
import android.app.Activity;
import android.os.Bundle;
import android.util.Log;
import android.view.Menu;
import android.widget.TextView;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
TextView MyText;
int Number = 1;
MyText = (TextView) findViewById(R.id.MyText);
Runtime runtime = Runtime.getRuntime();
Process process;
try {
String[] cmd = {"cd","etc"};
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(Number++ + " " + line + "\n");
}
Number = 1;
process.waitFor();
MyText.setText(sb);
process.destroy();
br.close();
}
catch (Exception e) {
e.fillInStackTrace();
Log.e("Process Manager", "Unable to execute top command");
}
}
@Override
public boolean onCreateOptionsMenu(Menu menu) {
// Inflate the menu; this adds items to the action bar if it is present.
getMenuInflater().inflate(R.menu.main, menu);
return true;
}
}