Tôi cần theo dõi bằng cách nào đó nhật ký LogCat, có nghĩa là trong khi dịch vụ của tôi đang chạy, tôi cần đọc LogCat cho các mục nhập mới. Tại thời điểm này tôi chỉ biết làm thế nào để lấy lại một khi Log:Làm cách nào để theo dõi chặt chẽ tệp LogCat?
Process mLogcatProc = null;
BufferedReader reader = null;
try
{
mLogcatProc = Runtime.getRuntime().exec(new String[]
{"logcat", "-d", "ActivityManager:I *:S" });
reader = new BufferedReader(new InputStreamReader
(mLogcatProc.getInputStream()));
String line;
final StringBuilder log = new StringBuilder();
String separator = System.getProperty("line.separator");
while ((line = reader.readLine()) != null)
{
log.append(line);
log.append(separator);
}
Nếu tôi loại bỏ các tùy chọn -d nó sẽ không thoát khỏi nhưng cũng có thể nó sẽ không thể làm việc. Vậy làm thế nào tôi có thể sửa đổi mã dưới đây để tiếp tục đọc các mục mới từ LogCat?
Tôi có thể hỏi tại sao bạn muốn làm điều này? Nghe có vẻ như một ý tưởng tồi tệ. – torkildr
adb logcat? Tại sao bạn muốn logcat trong chương trình của bạn? –
Bởi vì nó có vẻ là cách duy nhất để biết khi nào một hoạt động bắt đầu. Để làm gì ? Đối với ứng dụng bảo vệ ứng dụng. Giống như App Protector .. và nếu bạn nhìn vào các điều khoản cần đọc nhật ký hệ thống ... – Alex