int count = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
Button start = (Button) findViewById(R.id.start);
start.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Thread thread = new Thread(new Runnable() {
@Override
public void run() {
try {
String[] cmd = new String[] { "logcat", "-f",Environment.getExternalStorageDirectory()+"/log.txt", "-v", "time" };
Runtime.getRuntime().exec(cmd);
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
thread.start();
}
});
Button stop = (Button) findViewById(R.id.stop);
stop.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
try {
Runtime.getRuntime().exec("logcat -d");
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
}
});
Button addLog = (Button) findViewById(R.id.addLog);
addLog.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
Log.e("logTag", Integer.toString(count));
count ++ ;
}
});
}
start
ボタンを使用してアプリのログの保存を開始し、を使用して停止したいstop
。このaddLog
ボタンは、さらに行がファイルに追加されているかどうかを確認するために使用されlog.txt
ます。ボタンはstart
正常に機能しますが、問題は で終わらないことstop
です。を押した後も、ボタンstop
を押して
ファイルaddLog
を確認すると、最後の行が追加されています。log.txt
私のせいは何ですか?
ストリームを開始し、このアクティビティを閉じて、他のアクティビティのツアーに参加し、戻ってロギング マシンをシャットダウンする必要があります。