Theo mặc định, lớp Đăng nhập trong android ghi nhật ký vào bảng điều khiển (logcat). Có cách nào đơn giản để viết nhật ký f.e. trong một số tập tin?Đăng nhập bằng văn bản Android vào tệp
Trả lời
Redirect tất cả các thông báo lỗi để nộp sử dụng FileInputStream
Làm thế nào anh ấy sẽ làm điều này? Bạn có thể cung cấp một số liên kết hoặc mã mẫu không? – Gray
Nếu đây chỉ dành cho các mục đích phát triển, bạn có thể gọi logcat trên thiết bị và chuyển hướng đầu ra của nó vào một tập tin. Ví dụ: adb shell logcat > log.txt
.
Hoặc, bạn có thể thử chuyển hướng stdout
và stderr
vào một tệp, iirc tính năng này sẽ hoạt động nhưng tôi không có điện thoại của tôi để kiểm tra.
Tuy nhiên, sẽ dễ dàng hơn khi chỉ tạo lớp ghi nhật ký cơ bản của riêng bạn mà thực hiện tương tự như lớp được xây dựng nhưng cũng lưu vào tệp.
Trong Eclipse ddms có tùy chọn lưu nhật ký vào tệp.
Một lớp đơn giản Log
(chỉ mục đích phát triển/thử nghiệm) tương tự như android.util.Log
, nhưng đăng nhập vào sdcard. Chỉ sửa đổi mã hiện tại mới là thay đổi import android.util.Log
thành import com.example.Log
. Ngoài ra thêm phép như <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE" />
package com.example.logger;
import java.io.File;
import java.io.FileWriter;
import java.io.IOException;
import java.text.SimpleDateFormat;
import java.util.Date;
import android.os.Environment;
public class Log {
private static final String NEW_LINE = System.getProperty("line.separator") ;
public static boolean mLogcatAppender = true;
final static File mLogFile;
static {
mLogFile = new File(Environment.getExternalStorageDirectory(), "logs.log");
if (!mLogFile.exists()) {
try {
mLogFile.createNewFile();
}
catch (final IOException e) {
e.printStackTrace();
}
}
logDeviceInfo();
}
public static void i(String TAG, String message){
appendLog(TAG + " : " + message);
if (mLogcatAppender) {
android.util.Log.i(TAG, message);
}
}
public static void d(String TAG, String message){
appendLog(TAG + " : " + message);
if (mLogcatAppender) {
android.util.Log.d(TAG, message);
}
}
public static void e(String TAG, String message){
appendLog(TAG + " : " + message);
if (mLogcatAppender) {
android.util.Log.e(TAG, message);
}
}
public static void v(String TAG, String message){
appendLog(TAG + " : " + message);
if (mLogcatAppender) {
android.util.Log.v(TAG, message);
}
}
public static void w(String TAG, String message) {
appendLog(TAG + " : " + message);
if (mLogcatAppender) {
android.util.Log.w(TAG, message);
}
}
private static synchronized void appendLog(String text) {
final SimpleDateFormat sdf = new SimpleDateFormat("yyyy-MM-dd HH:mm:ss.SSS");
try {
final FileWriter fileOut = new FileWriter(mLogFile, true);
fileOut.append(sdf.format(new Date()) + " : " + text + NEW_LINE);
fileOut.close();
}
catch (final IOException e) {
e.printStackTrace();
}
}
private static void logDeviceInfo() {
appendLog("Model : " + android.os.Build.MODEL);
appendLog("Brand : " + android.os.Build.BRAND);
appendLog("Product : " + android.os.Build.PRODUCT);
appendLog("Device : " + android.os.Build.DEVICE);
appendLog("Codename : " + android.os.Build.VERSION.CODENAME);
appendLog("Release : " + android.os.Build.VERSION.RELEASE);
}
}
bạn hữu ích ..! –
- 1. Đăng nhập bằng Python vào tiện ích văn bản Tkinter
- 2. Đăng nhập vào một tệp trên Android
- 3. Đăng nhập Hủy đầu ra thành một tệp văn bản
- 4. (Java) ghi sự kiện để đăng nhập tệp văn bản
- 5. Lấy tên người dùng: mật khẩu từ tệp văn bản, sau đó đăng nhập vào biểu mẫu đăng nhập
- 6. Nhập văn bản vào Javascript
- 7. Nối văn bản vào tệp bằng Python
- 8. vba: Nhập tệp văn bản vào bảng excel
- 9. Xuất Jersey đăng nhập vào một tệp?
- 10. CocoaLumberjack FileLogger đăng nhập vào nhiều tệp
- 11. Đăng nhập vào tệp khác với log4cxx
- 12. Đăng nhập thiết bị vào tệp
- 13. Cách đăng nhập vào Youtube bằng PHP?
- 14. Đăng nhập vào trang web bằng python
- 15. Cách đăng nhập vào Craigslist bằng C#
- 16. đăng nhập vào trang web bằng HTMLAgilityPack
- 17. Hệ thống ghi đè.Diagnostics.Trace.WriteLine để đăng nhập vào một tệp
- 18. Nhập văn bản vào XNA (để nhập tên, trò chuyện)
- 19. jquery ctrl + nhập như nhập vào vùng văn bản
- 20. Nút Đăng nhập Facebook văn bản tùy chỉnh hoàn nguyên
- 21. Đăng nhập vào Groovy Script
- 22. Làm cách nào để đăng nhập VBA Debug.Print xuất ra tệp văn bản?
- 23. đính kèm tệp văn bản vào email
- 24. Thêm văn bản vào mỗi dòng trong tệp văn bản bằng PowerShell
- 25. Đăng nhập Android trong ứng dụng của tôi bằng thông tin đăng nhập google
- 26. Làm cách nào để không cho phép nhập vào trường nhập văn bản bằng jQuery?
- 27. Cách đăng nhập vào Facebook bằng lập trình bằng Java?
- 28. Đặt trọng tâm vào hộp văn bản trong Kiểm soát đăng nhập ASP.NET khi tải trang
- 29. Cách đăng nhập vào trang web với xác thực cơ bản bằng cách sử dụng Powershell
- 30. Cách đăng nhập vào nhiều mục tiêu bằng NLog?
nếu bạn tham gia một cách tiếp cận ngây thơ chỉ mở một tập tin xử lý và viết ở đó - bạn sẽ được ghi vào hệ thống tập tin trên thiết bị Android của bạn, trong khi những gì bạn cần là lẽ một hệ thống tập tin trên máy dev của bạn? – justadreamer
Bạn có muốn xuất các tin nhắn logcat thành một tập tin hay chỉ viết các thông điệp tường trình trong các tập tin? – SERPRO
Tôi muốn xuất thông điệp logcat vào tệp. –