首页
学习
活动
专区
圈层
工具
发布

Android adb logcat使用技巧「建议收藏」

大家好,又见面了,我是全栈君。 前言 新买的笔记本E431装了最新版的Eclipse,搞定了Android开发环境,可是logcat里查看东西居然仅仅显示level,没有错误的具体信息。...我本身也不是一个愿意折腾图形界面,更喜欢纯命令行的操作,因此今天在明昊师兄的建议下,果断放弃Eclipse的logcat,投奔adb shell下运行logcat。...[] 能够直接在命令行通过例如以下命令查看日志输出: adb logcat 也能够通过adb shell登录到开发机后,直接运行例如以下命令: logcat option...而且导致错误 全部优先级都自己主动包括比它高的优先级。比如logcat *:I。包括了信息、警告、错误等信息。 因此。当应用崩溃时。...比如,我须要搜索错误报告中包括“wangzhengyi”关键词的日志,能够採用例如以下命令: adb logcat *:E | grep -i 'wangzhengyi' 发布者:全栈程序员栈长,转载请注明出处

1.2K20

《Android编程权威指南》之Android应用的调试篇

异常与栈跟踪 写代码嘛,一个不注意就把程序写奔啦,不用担心,展开Logcat工具窗口。上下滑动LogCat窗口滚动条,就能看到整片红色的异常或错误信息。...上述图片显示的异常,我们可以从异常语句直接跳转到源代码出错的对应行上,找出奔溃原因,加以修正。...当然这是比较简单的异常,真正的复杂项目中,碰到运行异常时,记得在LogCat中寻找最后一个异常及其栈跟踪的第一行(对应着源代码),这也是查找解决方案的最佳起点。...诊断应用异常 由于有的错误并不会产生崩溃,却得不到我们想要的结果,此时,我们就需要打印日志跟踪或者是断点调试了。...相对而言,代码调试的方法更为方便,应用以调试模式运行后,可在应用运行的同时,在不同的地方设置断点,寻找解决问题的线索。 当然不同场景下,打印日志会更加清晰、方便寻找解决问题线索,比如说一个循环中。

1.4K20
  • 您找到你想要的搜索结果了吗?
    是的
    没有找到

    Logcat 想象成一个巨大的环形录音机

    这是一份非常详细的logcat说明书。为了让你更高效地使用,我将其按功能场景重新分类并进行了解释。你可以把Logcat想象成一个巨大的环形录音机,它一直在后台记录系统发生的一切。...场景:在开始测试你的App之前,先清空旧日志,避免干扰。-bBUFFER:指定查看哪个“频道”(缓冲区)。main:主日志(普通App都在这)。system:系统服务日志。crash:应用崩溃日志。...只显示优先级/标签(PID)。color:(强烈推荐)用颜色区分错误(红色)、警告(橙色)等,非常护眼。修饰词(Modifiers):year:在时间里加上年份。...用法:adblogcat-e"Login|Error"(只显示包含Login或Error的行)。-t/-T(Time):时间旅行。-t100:打印最近100行并退出。...总结:高手常用的几套连招日常开发调试(带颜色、看崩溃):展开代码语言:BashAI代码解释adblogcat-vcolor*:E查找特定Bug(比如登录失败):展开代码语言:BashAI代码解释adblogcat-vcolor-e"LoginFail

    10610

    安卓开发出现WebView白屏:一场从“插件怀疑”到“Trichrome 缺失”的漫长排查

    项目运行在一台工业平板上,我使用 flutter_webview 来加载内嵌网页。界面一切正常,唯独 WebView 组件显示——一片纯白。 没有崩溃、没有警告、没有错误日志。...你会觉得好像页面在加载,但其实什么都没出来。 而更诡异的是,这种“安静的失败”并没有任何 Flutter 层或 Android 层的错误提示。 于是,我的 WebView 调试之旅开始了。...再看 GPU 驱动、EGL 初始化,也没有崩溃日志。 于是我排除了常见的几个嫌疑: 不是插件; 不是权限; 不是硬件加速; 不是系统完全不支持 WebView。 然而问题依然没有任何突破口。...深入 logcat:看似平静的水面下,其实风暴在酝酿 直到我用如下命令查看崩溃日志: adb logcat -b crash -t 200 我注意到反复出现的几条关键日志: failed to attach...图形能力与 GPU 侧写 `adb shell dumpsys SurfaceFlinger grep -iE 'GLES EGL 日志与崩溃分析 adb logcat -c 清空日志缓冲区 在复现前清理噪音

    55310

    测试工程师「 面试题 」那点故事!

    -v time :抓取实时日志 adb logcat *.E:抓取APP崩溃日志 adb logcat -c :清楚旧日志信息 adb version:查询adb版本 6.如何判断一个bug是前端还是后端的...; 试:在APP或者网页中随意点击,没有任何逻辑章法,确保不会出现问题。...0个人同时使用登录,接口响应时间为多久 四、安全 L注入 及密码是否通过加密的方式传输给服务器 在服务器验证还是前端JavaScript验证 录的cookie后,是否还能再次登录 户在不同设备上进行登录...用户代理,现在浏览器的详细信息 Accept-Language :能够接受的回应内容的自然语言列表 Content-Type :请求体的多媒体类型(用于POST和PUT请求中) 报文体:它将一个页面表单中的组件值通过...503:表示服务器当前不能处理客户端的请求,在一段时间后服务器可能恢复正常 11.jmeter做性能或者压力测试需要关注的有哪些内容?

    96110

    测试人员面试需要掌握的内容

    -v time :抓取实时日志 adb logcat *.E:抓取APP崩溃日志 adb logcat -c :清楚旧日志信息 adb version:查询adb版本 6、如何判断一个bug是前端还是后端的...; 随机测试:在APP或者网页中随意点击,没有任何逻辑章法,确保不会出现问题。...验证是在服务器验证还是前端JavaScript验证 清除登录的cookie后,是否还能再次登录 一个用户在不同设备上进行登录 多个用户使用同一IP进行登录 兼容性: 在不同浏览器内能否正常打开(谷歌,...Set- Cookie发送的一个超文本传输协议Cookie 报文体:它将一个页面表单中的组件值通过param1=value1¶m2=value2的键值对形式编码成一个格式化串,它承载多个请求参数的数据...503:表示服务器当前不能处理客户端的请求,在一段时间后服务器可能恢复正常 11、jmeter做性能或者压力测试需要关注的有哪些内容?

    86910

    Android ADB:从安装到高级调试的终极指南(附跨平台实战教程)

    如果设备没有显示在列表中,可能是驱动未安装正确、USB 数据线有问题或者设备的 USB 调试未成功开启,需要逐一排查解决。 2....例如,要在设备上执行 “date” 命令查看设备当前时间,在电脑的命令提示符中输入: adb shell date 执行后,会在命令行中显示设备的当前时间。...例如,当应用出现崩溃时,在日志中可以找到崩溃的原因和相关的堆栈信息,帮助开发者快速定位问题所在。 2....日志过滤 由于设备日志信息通常非常多,为了更快速地找到我们关注的信息,logcat 支持日志过滤功能。...:清除应用数据后重试 5.3 日志乱码问题 解决方法: 确保终端编码为 UTF-8(如 Windows 命令提示符需设置:chcp 65001) 在adb logcat命令中添加参数:

    2.4K10

    Android Crash之Native Crash分析

    前言 上一篇给大家介绍了Android Crash中的Java Crash分析,我们可以知道Java Crash一般会弹出提示框告诉我们程序崩溃了,通常使用Crash工具都能够捕获到;本篇博客来谈谈如何针对...既然要分析就必须找到可以分析的东西,我们在分析Java层Crash的时候是通过logcat日志找到对应的出错代码,然而Native层Crash也是可以logcat日志来进行分析的。...这里我们截取上面制造的crash在logcat显示的日志: ? 这个是什么鬼,看不懂啊有木有。...不过系统还是会提供相关有用的日志,我们在Android Studio查看logcat的时候需要做一下过滤。 ? 在logcat添加完”DEBUG”的过滤项之后,我们就能得到以下log: ?...Crash分析有个初步的认识,关于这一块还有很多东西可以讲,比如具体的signal有哪些,Linux下的信号机制是怎样的,怎样才能够捕获到信号等等,关于Native层的Crash捕获,我们有没有第三方的开发工具能帮助到我们

    4K60

    复杂项目即时通讯从android 5升级android x后遗症之解决报错#1057 SIGABRT #00 pc 0000000000073898-优雅草卓

    目前切换账号时候退出账号保留了资料如果没有卸载app会和新登录账号产生冲突,当然了其实这个属于一个功能的完善并不属于兼容性,不过我们打算在4.1.0来完善好这个版本,另外在新版本中我们也更新了身份标识和群标识功能...在 Android Studio 的 Logcat 中,不要只过滤崩溃时的日志,要查看 Application 或 No Filters 下的所有日志。...原因:JNI 调用错误:在 JNI 中传递了错误的参数(如 NULL 指针)、错误地使用了 JNIEnv(如在错误的线程中使用)、没有检查异常等。内存问题:堆栈损坏:数组越界、缓冲区溢出。...在终端中运行 adb logcat > log.txt,然后在手机上重现崩溃,Ctrl+C 停止命令,查看 log.txt 文件。...你打开 my_file.c 文件的第 123 行,发现了一个数组越界访问的错误,修复它。总结步骤操作1仔细阅读完整的 Logcat 日志,寻找崩溃前的 Java 异常或错误信息。

    45510

    熟悉Android Studio界面,开始装逼卖萌

    4编辑器 编辑器是基于标签的,在Android Studio中每打开一个文件编辑时,会同时打开一个新的文件标签。 ?...右边栏: 右边栏显示了代码的警告或错误信息,黄色为警告,红色为错误。将鼠标放到上面可以查看警告和错误数量,点击警告可以跳转到对应的代码。...5工具条 工具条是用来放置工具的,点击后可以展开工具窗口。Android Studio中的工具条分布在主界面的左右两边和底部(状态栏上面)。...“CRLF”为行分隔符。 “UTF-8”为当前文件的编码,若当前文件没有自动选择编码,则可以通过这里进行编码的选择。 后面再紧跟着当前文件的上下文环境。...7.5收藏夹工具窗口: Favorites 在使用Android Studio的日常编码中,如果某个文件或某段代码是我们经常需要查看或使用的,那就可以把它添加到收藏夹中,以便快速查看。

    4.3K60

    Android Studio + Gemini 移动开发领域的一次范式转移

    文件;光标位置:你正在操作的具体代码行;项目结构:相关的类、方法、资源文件、依赖项(如 build.gradle);错误信息:编译错误、运行时异常的堆栈跟踪;你的输入:注释、问题或自然语言指令。 ...示例:你在 MainActivity.kt 中写了一段不完整的 Compose UI,光标停在 Text() 组件后。...小知识:Gemini 在 Android Studio 中默认不会自动上传整个项目,仅发送与当前任务相关的上下文片段,最大限度保护开发者隐私。 ...AI 驱动调试: 应用崩溃时,Logcat 旁直接显示:“NullPointerException at line 42....Suggested fix: add null check or use Elvis operator.”动态 Lint 规则: 不再是死板的“不要硬编码字符串”,而是:“检测到你在 Compose

    91520

    Android StrictMode 详解

    大家好,又见面了,我是你们的朋友全栈君。...可以强制用警告代替崩溃(crash),也可以仅将警告计入日志,让你的应用继续执行 StrictMode最常用来捕捉应用程序的主线程,它将报告与线程及虚拟机相关的策略违例。...你能选择将警告写入LogCat,显示一个对话框,闪下屏幕,写入DropBox日志文件,或让应用崩溃。最通常的做法是写入LogCat或让应用崩溃。...penaltyLog()表示将警告输出到LogCat,可以使用其他或增加新的惩罚(penalty)函数,例如使用penaltyDeath()的话,一旦StrictMode消息被写到LogCat后应用就会崩溃...除了在Logcat中查看StrictMode 的日志信息,如果使用 penaltyDropbox()方法,那么还可以通过如下所示的命令来调用DropBoxManager观察StrictMode日志:

    94820

    如何解决Xcode中的SIGABRT错误

    大家好,又见面了,我是你们的朋友全栈君。 一分钟,您的iOS应用程序可以在Xcode中正常运行,而下一分钟,它由于不可思议的SIGABRT错误而崩溃了。这是怎么回事!?...在编辑器中,我们看到可怕的线程1:信号SIGABRT错误。突出显示了编辑器中的第12行,即类的定义AppDelegate。 在底部,您会看到有用的调试输出。...该行被突出显示,因为它是您应用程序的第一行代码。AppDelegate除非您绝对确定其中存在错误,否则不要浪费时间在课堂上。 stacktrace是导致应用崩溃的函数调用列表。...有一个合理的,逻辑上的错误原因。这可能是您自己的代码中的错误,并且这没有什么错。应用不是魔术,没有人能吸引您,并且错误永远不会出乎意料。不要让自己感到沮丧,例如“昨天运行良好!”...使用异常断点收集SIGABRT崩溃的其他信息,然后在解决该错误后将其禁用(直到再次需要它)。

    9.2K20

    使用adb logcat命令显示Android设备上的Log日志

    一、在cmd窗口查看手机的Log日志 在确定连上手机后(adb device,可以看到电脑连接的手机) 在cmd窗口中输入如下命令,就可以像Studio中的Logcat窗口中显示日志信息: //格式1:...但是这样没有过滤条件,如果Log日志很多,很难找到我们想要的信息, 当然也可以复制cmd中的数据到一个文本中慢慢处理的,就是效率不高。...下面介绍adb logcat中的详细参数命令以及如何才能高效的打印日志,或者把日志保存到我们指定的位置。...###但是我发现自己使用tag标签命令,并没有成功过滤。并且使用tag后,后面的级别也无效了,所以tag使用*号比较保险。...,是会显示很多日志信息的,好像是从设备最近一次开机的日志开始显示 最好的做法的先使用-c清除之前的日志信息,再触发事件,查看最近的日志信息 ##下面是我的一个示例: 在MainActivity的生命周期中写几个方法打印

    26K10

    金三银四季招聘季,APP测试面试题温新一遍

    验证码校验:必填项,过期,错误,无网络时获取验证码,多次获取,超过获取次数,输入验证码后,修改手机号。 登录时与系统的交互:锁屏,蓝牙,home,后退,横竖屏,修改字体字号。...当Push消息是针对登录用户的时候,需要检查收到的Push与用户身份是否相符,没有错误的将其他人的消息推送过来。一般情况下,只对手机上最后一个登录用户进行消息推送。...APP中访问网络的地方,组件能否正常下载并显示。 APP的SDK与手机系统不兼容。 系统升级后,新版本不兼容老版本的API,返回对象失败,报空指针。 软件权限未开放。...这个主要是面试官考察你会不会看日志,是不是看得懂Java里面抛出的异常,一般面试中Java Exception(runtimeException )是必会被问到的问题,app崩溃的常见原因应该也是这些了...、dumpstate、logcat的输出,也是用于分析错误,输出比较多,建议重定向到一个文件中,如adb bugreport > d:\bugreport.log。

    1.4K21

    金三银四季招聘季,APP测试面试题温新一遍

    验证码校验:必填项,过期,错误,无网络时获取验证码,多次获取,超过获取次数,输入验证码后,修改手机号。 登录时与系统的交互:锁屏,蓝牙,home,后退,横竖屏,修改字体字号。...当Push消息是针对登录用户的时候,需要检查收到的Push与用户身份是否相符,没有错误的将其他人的消息推送过来。一般情况下,只对手机上最后一个登录用户进行消息推送。...APP中访问网络的地方,组件能否正常下载并显示。 APP的SDK与手机系统不兼容。 系统升级后,新版本不兼容老版本的API,返回对象失败,报空指针。 软件权限未开放。...这个主要是面试官考察你会不会看日志,是不是看得懂Java里面抛出的异常,一般面试中Java Exception(runtimeException )是必会被问到的问题,app崩溃的常见原因应该也是这些了...、dumpstate、logcat的输出,也是用于分析错误,输出比较多,建议重定向到一个文件中,如adb bugreport > d:\bugreport.log。

    1.3K30

    android studio logcat技巧

    当应用程序引发异常时,Logcat 会显示一条消息,后跟包含该代码行链接的关联堆栈跟踪。 Logcat 窗口入门 要查看应用程序的日志消息,请执行以下操作。...默认情况下,消息行不会在日志视图中换行,但您可以使用 Logcat 工具栏中的 Soft-Wrap 选项。...您可以通过单击 Logcat 工具栏中的配置 Logcat 格式选项 切换到默认显示信息较少的紧凑视图。...在 Logcat 工具栏中,您可以滚动到日志末尾,也可以单击特定行以保持该行可见。 在 Android Studio 中,您可以直接从主查询字段生成键值搜索。...通过在字段名称前添加 - 来表示否定。例如, -tag:MyTag 匹配 tag 不包含字符串 MyTag 的日志条目。 正则表达式匹配是通过在字段名后附加 ~ 来表示的。例如, tag~:My.

    3.3K10

    严苛模式(StrictMode)

    它将报告与线程及虚拟机相关的策略违例。一旦检測到策略违例(policy violation),你将获得警告,其包括了一个栈trace显示你的应用在何处发生违例。...你能选择将警告写入LogCat,显示一个对话框,闪下屏幕,写入DropBox日志文件,或让应用崩溃。最通常的做法是写入LogCat或让应用崩溃。...penaltyLog()表示将警告输出到LogCat,你也能够使用其它或添加�新的惩处(penalty)函数,比如使用penaltyDeath()的话,一旦StrictMode消息被写到LogCat后应用就会崩溃...你不须要频繁打开严苛模式(StrictMode),你能够在主活动的onCreate()函数中打开它,你也能够在Application派生类的OnCreate()函数中设置严苛模式(StrictMode)...Punting…”);   }   //假设考虑到关于版本号兼容问题,由于依照上面的写法在2.3下面系统是没有问题的,可是在2.3以上的话,就会出错,所以应该採用下面方式来处理: @SuppressLint

    71440

    Android Studio

    我使用logcat的方法是,所有自己打印的log的字符串中加上一串特定字符,比如:log.w("xyz "+stringToLog);所有的log前面都加"xyz "。...然后在搜索过滤框里输入xyz就行了,一般只会显示出自己打印的log。(xyz不要用java之类log中容易出现的字符串替换)。...- CSDN.NET 日志工具 LogCat - Android Studio 单刷《第一行代码 (4)中文乱码 Android Studio导入项目的中文注释乱码解决方法_百度经验 (5)如何查看日志...PID: 16144 SIG: 9 可以按如下链接设置 用华为C8813调试LogCat不显示日志问题解决方法 - Wave的专栏 - 博客频道 - CSDN.NET 我的手机操作如下:...: '\ufeff' android studio Error:(1 IntelliJ IDEA :Error:(1 我的解决办法: 我电脑上没有notepad++,但有Sublime Text,我把CgmLibrary

    4.2K80

    最新面试题汇总(附带答案)【建议看看】

    内存管理:可能内存过低,或者是授权的内存位置的使用可能会导致App失败; 5.用户过多:连续数量过多可能会导致App崩溃; 6.代码错误:没有经过测试的新功能,可能会导致App在生产环境中失败; 7.第三方服务...比如做登录操作,后台有可能会限制一个用户不能重复登录多次,如果演示登录的并发操作,可以使用jmeter中的csv元件,将用户信息导出来,放到文件中,就可以让线程共享这些数据。...显示,管理执行中的程序,就是任务管理器 36.自动化测试有了解吗?自动化测试的工具有哪些? 通过脚本代替一些手动化测试的步骤。...我们的电脑(c端)上运行自动化测试脚本,调用的是appium的webdriver的接口,appium服务器(s端)接收到我们client上发送过来的命令后,它会将这些命令转换为UIautomator认识的命令...; 11.24小时后别人没有领取的红包是否可以退回原来的账户,或者是否还可以领取; 12.用户是否可以多次抢一个红包; 13.用户在多人群里发红包是否可以抢自己的红包; 14.红包余额里的小位数是否有限制

    1.3K20
    领券