Android Studio, logcat dọn dẹp sau khi đóng ứng dụng


133

Tôi đang gặp vấn đề với logcat của mình kể từ khi cập nhật 1.2 Beta cho Android Studio. Khi tôi chạy ứng dụng của mình, nó ghi lại mọi thứ như bình thường, sau đó tôi nhận được tại thời điểm ứng dụng của tôi gặp sự cố với ứng dụng có nội dung: thật không may, Game đã dừng.

Sau vài giây, android đóng tin nhắn đó lại. Khi điều đó xảy ra, logcat của tôi cũng bị xóa hoàn toàn nghĩa là tôi hầu như không nhận được bất cứ lúc nào để đọc lỗi. Tôi đã tìm thấy một số thông tin về bộ đệm, nhưng có vẻ như Android Studio không có tùy chọn để tăng nó bên cạnh thực tế là tôi nghi ngờ đó là vấn đề.

Một cái gì đó có thể hữu ích là sau khi nó xóa và nhét quá trình thay đổi vào Android. Process.core và thông báo tôi nhận được trong logcat của mình là:

04-13 10:28:13.394  12259-12265/android.process.acore D/dalvikvm    
Debugger has detached; object registry had 1 entries

Chỉnh sửa: Tôi đã đọc về các điểm dừng, vì vậy, ứng dụng tập trung bị vô hiệu hóa vào các điểm dừng trong Cài đặt-xây dựng, thực thi, trình gỡ lỗi triển khai nhưng nó không có tác dụng.


2
Nếu bạn tìm thấy vị trí đã cài đặt của chương trình adb, bạn có thể chạy adb logcattừ thiết bị đầu cuối hoặc cửa sổ lệnh của mình và tùy ý đưa nó vào máy nhắn tin, grep, tee hoặc bất cứ thứ gì.
Chris Stratton

1
vâng, bạn cũng có thể thử adb shell bugreport > log.txt, các loại thông tin nhật ký sẽ được tìm nạp sau khi lệnh kết thúc.
ngon

@yummy làm việc tốt nhất cho tôi bây giờ, vẫn hy vọng tìm được cách khắc phục vì theo tôi đây không phải là cách tốt nhất. Cảm ơn
Black Lotus

1
Tôi không tìm thấy bất kỳ giải pháp nào để không xóa nhật ký bằng Android Studio 1.2 nhưng một giải pháp dễ dàng là không nhấp vào nút đóng (vào thiết bị) khi ứng dụng gặp sự cố. Do đó, bạn có tất cả các nhật ký và lý do tại sao các ứng dụng bị sập.
Chakir

@Jameltheone Các tin nhắn chỉ ở trên màn hình trong vài giây. Sau đó, nó sẽ tự đóng cuộc đối thoại sự cố. Vì vậy, không thực sự có quyền kiểm soát về điều đó.
Hoa sen đen

Câu trả lời:


270

Tôi đã có cùng một vấn đề, nhưng trông giống như một tính năng hơn là một lỗi:

Trong AndroidStudio, cài đặt mặc định cho cửa sổ Logcat dường như là "Chỉ hiển thị ứng dụng được chọn" (góc trên cùng bên phải của cửa sổ Logcat) ... đang xem nhật ký của quá trình đã chọn (khởi chạy hiện tại của bạn theo mặc định). Vì vậy, khi ứng dụng của bạn gặp sự cố trong quá trình thử nghiệm, quá trình đó không còn nữa, vì vậy bộ lọc sẽ xóa nhật ký.

Thay vào đó, chọn "Chỉnh sửa cấu hình bộ lọc ..." và thiết lập bộ lọc cho ứng dụng của bạn , ví dụ:

  • Tên bộ lọc: MyApp
  • Gói Tên: com.example.myapp (<< thay thế bằng tên gói của ứng dụng của bạn)

... Và sau đó chọn bộ lọc đó cho các lần chạy sau. Điều này sẽ giữ nhật ký ở đó cho bạn, ngay cả sau khi ứng dụng gặp sự cố.


Cảm ơn bạn rất nhiều. Tôi đã tìm ra lỗi 2 ngày trước! Bây giờ tôi biết làm thế nào để thực sự xem lỗi. :)
Woppi

Bạn là SAVIOR đã cố gắng sao chép dán nhật ký trước khi xóa ... nghĩ rằng đó là điện thoại của tôi đang làm vì các điện thoại khác hoạt động bình thường.
Master Fathi

Chỉ là những gì tôi đã thiếu. Đây phải là câu trả lời được chấp nhận.
Mỡ

Có vấn đề tương tự. Hoạt động hoàn hảo.
Chandan Pednekar

59

Chuyển "Chỉ hiển thị ứng dụng đã chọn" thành "Không có bộ lọc". Bằng cách này, bạn có thể thấy đầu ra logcat từ một quy trình ngay cả khi quy trình đó không chạy.

Nhược điểm là logcat của bạn sẽ chứa nhiều thư rác hơn từ các quy trình khác.


1
để lọc thư rác, hãy nhập tên gói của ứng dụng của bạn vào thanh tìm kiếm bên cạnh danh sách thả xuống "chỉ hiển thị ứng dụng được chọn / không có bộ lọc".
tính toán

24

Ứng dụng của tôi đã bị sập và khởi động lại. Tôi cũng có một số vấn đề khi đọc logcat để biết chuyện gì đang xảy ra. Sau đó tôi nhận thấy rằng trong menu thả xuống, bên cạnh trình đơn thả xuống Thiết bị, nó có một cái gì đó như "com.mypackage.myapp ('some number')" và khi ứng dụng của tôi bị sập, có một tùy chọn khác có tên "com.mypackage.myapp ( 'một số số') [CHẾT] " . Nếu bạn chọn tùy chọn "Chết", nó sẽ hiển thị cho bạn logcat của phiên bản trước.

LogCat đã chết


Nó xuất hiện khi nó gặp sự cố.
ALourenco

Tôi có nghĩa là trên vụ tai nạn. PID thay đổi nhưng trường hợp chết không hiển thị trong danh sách.
Karan Modi

20

Trong trường hợp sự cố, xem Runtab ở dưới cùng của IDE.

Bạn có thể thấy lý do sự cố trong phần này (ngay cả trong trường hợp sạch logcat).

Lưu ý: Nếu thủ thuật trên không hoạt động, hãy thử tạo ra sự cố và ngắt ngay lập tức ngắt kết nối cáp di động (nếu bạn sử dụng thiết bị thực để kiểm tra). bạn có thể thấy lỗi trước khi nó được làm sạch.

Cập nhật: Nếu cũng có mẹo trên không hoạt động, hãy thử gắn và tháo điện thoại và hy vọng vấn đề được giải quyết.

Update2: Nếu một lần nữa không hoạt động, hãy thử Vô hiệu hóa các lần bắt và Khởi động lại sau đó bắt đầu gỡ lỗi một lần nữa.

Update3: Như cách cuối cùng, hãy thử gỡ bỏ ứng dụng và cài đặt lại sau đó bắt đầu gỡ lỗi (nếu bạn không mất điều kiện đó bạn muốn kiểm tra)


6

Trong Android Studio 2+

  1. Nhấp chuột Run

  2. Nhấp chuột Edit Configurations

  3. Trong Run/Debug Configurationscửa sổ chọn Miscellaneoustab

  4. Hãy chắc chắn rằng Clear log before launchhộp kiểm không được chọn


4

tôi đã đối mặt với cùng một vấn đề và đây là giải pháp: -

1- Công cụ -> Android -> Kích hoạt tích hợp ADB.

và bây giờ bạn có thể thấy logcat và các sự cố như bình thường


Sự tích hợp ADB của tôi đã được kích hoạt đủ đáng buồn. Một cái gì đó rất hữu ích là sau khi xóa, tôi nhận được thông báo: 04-13 10: 28: 13.394 12259-12265 / android. Process.acore D / dalvikvm Trình gỡ lỗi đã tách ra; đăng ký đối tượng có 1 mục
Black Lotus

@BlackLotus bạn đã giải quyết vấn đề của mình chưa? Tôi phải đối mặt với cùng một vấn đề ở đây
Hoo

Điều này không còn hợp lệ trong Android Studio mới.
Hamzeh Soboh

4

Bộ lọc sẽ xóa nhật ký một khi ứng dụng bị lỗi. Vì vậy, chọn "Chỉnh sửa cấu hình bộ lọc" và tạo bộ lọc tùy chỉnh của riêng bạn với tên bộ lọc. Điều này sẽ lưu nhật ký với thông tin ngay cả khi ứng dụng bị điên.


1

Đó là năm 2018 và điều này vẫn có thể xảy ra. Đóng Android Studio và mở lại.


0

Lỗi này dường như đã được sửa với bản phát hành mới của Android Studio phiên bản 1.2.2


1
Lỗi vẫn còn ở đây, ngay cả trong Android Studio 2.2.2, vì vậy tôi đoán @maxdownunder hoàn toàn đúng với giả định rằng đó thực sự là một ... "tính năng"
Aenadon

0

Tôi gặp vấn đề tương tự và không có câu trả lời nào có thể giúp tôi, cho đến khi tôi nhận ra ứng dụng của mình đang gây ra OutOfMemoryException. Đó cũng là một nguyên nhân gốc rễ có thể xảy ra.

Khi sử dụng trang web của chúng tôi, bạn xác nhận rằng bạn đã đọc và hiểu Chính sách cookieChính sách bảo mật của chúng tôi.
Licensed under cc by-sa 3.0 with attribution required.