Bạn không nên sử dụng e.printStackTrace()
trực tiếp nào — làm như vậy sẽ gửi các thông tin cho log Android mà không hiển thị những ứng dụng (log thẻ) nó đến từ đâu.
Như những người khác đã đề cập, tiếp tục nắm bắt số Exception
được đề cập, nhưng sử dụng một trong các phương pháp android.util.Log
để ghi nhật ký. Bạn có thể đăng nhập chỉ được thông báo, nhưng không phải là vết đống, hoặc sử dụng tiết đăng nhập cho stack trace:
try {
Object foo = null;
foo.toString();
} catch (NullPointerException ex) {
Log.w(LOG_TAG, "Foo didn't work: "+ ex.getMessage());
Log.d(LOG_TAG, Util.stackTraceWriter(ex));
}
Bạn nên dải DEBUG
hoặc VERBOSE
thông điệp đăng nhập từ sản xuất của bạn được xây dựng. Cách dễ nhất là use ProGuard to remove Log.[dv]
calls từ mã của bạn.
Nguồn
2010-01-15 18:28:22
có vẻ như 'Util.stackTraceWriter' không còn ở đó nữa. Dù sao có ['Log.getStackTraceString'] này (http://developer.android.com/reference/android/util/Log.html#getStackTraceString%28java.lang.Throwable%29) – superjos
Bạn không được phép sử dụng Nhật ký khi bạn muốn xuất bản ứng dụng! –
@SoheilSetayeshi Điều gì khiến bạn nghĩ vậy? Kiểm tra nhật ký điện thoại của bạn; bạn sẽ thấy nhiều nhật ký từ các ứng dụng đã cài đặt. –