【发布时间】:2015-08-02 00:38:33
【问题描述】:
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
文件,我看到最后一行已添加。
我有什么错?
我需要开始直播,关闭此活动并参观其他活动,然后再回来关闭伐木机。
【问题讨论】:
标签: android android-logcat android-runtime java-threads