`

java 把logcat日志保存到SD里

 
阅读更多
 private void saveLogcat(){
	    	String shell = "logcat -v time";	    	
	        try
	        {	        	
	            Process process = Runtime.getRuntime().exec(shell);
	            InputStream inputStream = process.getInputStream();	            
	            
	            boolean sdCardExist = Environment.getExternalStorageState().equals(
	                    android.os.Environment.MEDIA_MOUNTED);
	            File dir = null; 	           
	            
	            if (sdCardExist)
	            {

	                dir = new File(Environment.getExternalStorageDirectory().toString()
	                        + File.separator + "logcat.log");
	                if (!dir.exists())
	                {
	                    dir.createNewFile();
	                }
	            }
	            byte[] buffer = new byte[1024];
	            int bytesLeft = 5 * 1024 * 1024; 
	            try
	            {
	                FileOutputStream fos = new FileOutputStream(dir);
	                try
	                {
	                    while (bytesLeft > 0)
	                    {
	                        int read = inputStream.read(buffer, 0, Math.min(bytesLeft,
	                                buffer.length));
	                        if (read == -1)
	                        {
	                            throw new EOFException("Unexpected end of data");
	                        }
	                        fos.write(buffer, 0, read);
	                        bytesLeft -= read;
	                    }
	                } finally
	                {
	                    fos.close();
	                }
	            } finally
	            {
	                inputStream.close();
	            }
	            Log.v(TAG, "LOGCAT = ok" );
	        } catch (IOException e)
	        {
	            e.printStackTrace();
	        }
	    }
 <uses-permission android:name="android.permission.WRITE_EXTERNAL_STORAGE"/> 
    <uses-permission android:name="android.permission.READ_LOGS"/> 

 

分享到:
评论

相关推荐

    Android-将logcat日志存储到文件中日志量较大的情况下方便查看

    当遇到复杂的问题或者需要长时间监控应用状态时,将logcat日志保存到文件中尤其有用。本文将详细介绍如何在日志量较大时,将logcat日志存储到文件,并便于后续分析。 首先,我们需要理解logcat的基本概念。logcat是...

    输出日志到SD卡

    传统的Android Logcat工具虽然方便,但有时我们可能需要将日志保存到外部存储,例如SD卡,以便离线分析或分享给其他团队成员。"输出日志到SD卡"这一主题,就是探讨如何利用第三方库`microlog4android`来实现这一功能...

    收集程序崩溃日志到SD卡

    在处理器的handleException方法中,可以编写代码来获取Logcat中的错误日志,并将其保存到SD卡上的文本文件中。 以下是一段示例代码: ```java public class CustomExceptionHandler implements Thread....

    android保存崩溃时的错误信息log至本地【源码+jar包】使用说明在eoe

    `CrashHelper`是一个专门为Android设计的工具,它可以在应用发生异常崩溃时自动捕获Logcat中的错误日志,并将其保存到设备的本地文件中。这极大地简化了开发者在问题排查时的工作,因为通常在真实设备上获取Logcat...

    Log输出到sdcard

    通过以上步骤,你可以实现将`Logcat`中的日志输出到SD卡,并按照日期进行管理和查看,这对于长期的故障排查和数据分析非常有帮助。在实际应用中,可以根据需求调整日志记录策略,优化日志系统以满足各种场景的需求。

    用LogWriter将Android应用程序的日志信息写入文件

    这使得开发者能够更方便地保存、查看和分析日志数据,尤其是在设备无法连接到电脑或需要离线分析的情况下。以下将详细介绍如何使用`LogWriter`以及其工作原理。 首先,创建一个`LogWriter`类,这个类需要继承`java....

    microlog4android将Android Log日志写到SD卡文件中实现方法

    总结起来,`Microlog4android`提供了一种方便的方式来管理和记录Android应用的日志,不仅可以在控制台输出,还可以将日志保存到SD卡上,便于离线分析和问题排查。通过合理的配置和使用,可以极大地提高开发效率和...

    判断双SD卡_CheckDoubleSDCard.zip

    9. **调试技巧**:为了理解和测试这段代码,开发者可能需要使用Android Studio的调试工具,如Logcat来查看日志输出,理解代码执行流程。 10. **测试覆盖**:了解如何编写单元测试和集成测试,以确保SD卡检测功能的...

    安卓SD卡文件管理更新信息相关-将一串信息可转为string的保存到本地的指定路径指定txt文件中.rar

    "安卓SD卡文件管理更新信息相关-将一串信息可转为string的保存到本地的指定路径指定txt文件中.rar"这个压缩包文件,显然提供了关于如何在Android系统上将字符串信息写入本地TXT文件的方法。虽然描述提到无法逐一验证...

    异常日志捕获ExceptionLog

    通过自定义`Application`类并在`AndroidManifest.xml`中指定,我们可以轻松实现全局的异常捕获,并将日志保存到外部存储,以便后续分析。在实际项目中,结合合适的日志库(如Logcat、Crashlytics等)和错误报告服务...

    无法运行android异常捕获存在sd卡中.rar

    在这个例子中,当应用崩溃时,我们不仅会在Logcat中记录异常信息,还可以选择将这些信息保存到SD卡上,方便后续分析。描述中提到的"crash"文件可能就是这种情况下生成的日志文件。 为了确保应用的稳定运行,开发者...

    嵌入式高级android操作系统练习题2.docx

    本资源摘要信息涵盖了嵌入式高级 Android 操作系统的多个方面,包括 Android 架构、Intent、dalvik 虚拟机、Android SDK 文件、Logcat 日志等级、ADB 命令、Android 模拟器参数、Android 应用组件等。 一、 Android...

    数据存储第1部分

    本文将深入探讨“数据存储第1部分”中的各个知识点,包括共享偏好设置(SharedPreference)、内部存储读写文件、获取SD卡剩余容量、文件访问权限、XML文件生成、Logcat日志记录、常见布局以及外部存储读写文件。...

    手机SD存储卡文件浏览 Android 源程序

    使用`Logcat`进行日志输出,便于定位问题。 通过这个项目,开发者可以深入理解Android文件系统操作,学习如何构建一个实用的文件管理应用。无论你是初学者还是经验丰富的开发者,此源代码都能为你提供宝贵的参考和...

    安卓SD卡文件管理更新信息相关-这是自己写的android文件浏览器demo的源代码对对初学者挺有帮助的.rar

    这时候需要使用Android Studio的调试工具,如Logcat来查看日志信息,定位和解决问题。对于跑不起来的情况,开发者需要逐步检查代码逻辑、配置文件以及运行环境,必要时可以查阅官方文档或在线资源来寻求解决方案。 ...

    AndroidGetSDTree(简单SD卡文件浏览器)-IT计算机-毕业设计.zip

    Android Studio提供了丰富的调试工具,如Logcat用于查看日志,Layout Inspector用于检查布局,以及模拟器或真实设备进行测试。 通过这个毕业设计项目,学生可以学习到Android应用开发的基础知识,包括文件系统访问...

    android内容

    - **文件存储**:可以将数据保存到内部存储(如`/data/data/package_name/files`)或外部存储(如SD卡)。 - **SharedPreferences**:一种轻量级的数据存储方式,适合存储简单的键值对数据。 - **SQLite数据库**:...

    安卓Android源码——GetSDTree(简单SD卡文件浏览器).rar

    利用Android Studio的调试工具,如Logcat,可以跟踪程序运行时的错误和日志信息,帮助定位和解决问题。 总的来说,"GetSDTree"项目提供了一个学习Android文件操作和界面构建的实例,通过分析其源码,开发者可以深入...

    sdcard.txt

    1. **Android文件系统**:了解如何在Android系统中操作文件,包括读写SD卡上的文件,可能需要深入到系统的`java.io.File`类或`android.content.Context`的`openFileOutput()`和`openFileInput()`方法。 2. **权限...

    Android中级教程之----Log图文详解

    在 Android 中使用 Log 机制需要在 AndroidManifest.xml 文件中添加 android.permission.WRITE_EXTERNAL_STORAGE 权限,以便将日志信息写入到 SD 卡中。同时,在使用 Log 机制时需要注意 LogCat 的日志信息输出级别...

Global site tag (gtag.js) - Google Analytics