android 写入log文件,android开发分享将android logcat数据写入一个文件

这篇博客介绍了如何在Android应用中读取logcat日志并将其保存到外部存储的文件中。示例代码展示了如何通过Runtime类执行shell命令来抓取logcat,并提供了两个方法,一个用于直接显示在TextView中,另一个将日志写入文件。别忘了在AndroidManifest.xml中添加必要的权限。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

这是一个读取日志的例子 。

你可以改变这个写入一个文件而不是一个TextView 。

需要AndroidManifest权限:

码:

public class LogTest extends Activity { @Override public void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.main); try { Process process = Runtime.getRuntime().exec("logcat -d"); BufferedReader bufferedReader = new BufferedReader( new InputStreamReader(process.getInputStream())); StringBuilder log = new StringBuilder(); String line; while ((line = bufferedReader.readLine()) != null) { log.append(line); } TextView tv = (TextView) findViewById(R.id.textView1); tv.setText(log.toString()); } catch (IOException e) { } } }

Logcat可以直接写入一个文件:

public static void saveLogcatToFile(Context context) { String fileName = "logcat_"+System.currentTimeMillis()+".txt"; File outputFile = new File(context.getExternalCacheDir(),fileName); @SuppressWarnings("unused") Process process = Runtime.getRuntime().exec("logcat -f "+outputFile.getAbsolutePath()); }

有关logcat的更多信息:请参阅

或者你可以试试这个varian

尝试{ 最终文件path=新文件( Environment.getExternalStorageDirectory(),“DBO_logs5”); if(!path.exists()){ path.mkdir(); } 调用Runtime.getRuntime()。EXEC( “logcat -d -f”+ path + File.separator +“dbo_logcat” +“.txt”); catch(IOException e){ e.printStackTrace(); }

public static void writeLogToFile(Context context) { String fileName = "logcat.txt"; File file= new File(context.getExternalCacheDir(),fileName); if(!file.exists()) file.createNewFile(); String command = "logcat -f "+file.getAbsolutePath(); Runtime.getRuntime().exec(command); }

以上方法将所有日志写入文件。 也请在Manifest文件中添加下面的权限

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值