利用NDK崩溃日志查找BUG】的更多相关文章

摘要: 在android上开发c++应用, crash日志都是汇编码, 很难对应到c++代码中去. 通过此文, 你可以定位到程序崩溃时的C++代码, 精确查找问题. 博客: http://www.cnblogs.com/jhzhu 邮箱: jhzhuustc@gmail.com 作者: 知明所以 时间: 2014-06-20 背景介绍 本文主要内容: 利用android的crash log来对c++开发的android应用进行错误定位. 容易稳定复现的BUG, 一般可以通过断点调试来解决. 如果…
转自:http://www.tuicool.com/articles/qQNfUfe 背景介绍 本文主要内容: 利用android的crash log来对c++开发的android应用进行错误定位. 容易稳定复现的BUG, 一般可以通过断点调试来解决. 如果测试人员也无法稳定复现, log就成了程序吊定位问题的救命稻草 . 通用操作系统都有自己的日志系统, android也不例外. 救命稻草已经给你了~ () 但是, android的系统日志在c++代码崩溃时, 打印的都是内存地址和寄存器. 比…
作为一名应用开发者,你是否有过如下经历? 为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作.它在你的设备上也运行得很好,但是,上了应用商店后,还是有用户抱怨会闪退 ! 如果你跟我一样是个完美主义者,你肯定想将应用做到尽善尽美.于是你打开代码准备修复闪退的问题……但是,从何处着手呢?这时iOS崩溃日志派上用场了.在大多数情况下,你能从中了解到关于闪退的详尽.有用的信息.通过本教程,你将学习到一些常见的崩溃日志案例,以及如何从开发设备和iTunes Connect上获取崩…
作为一名应用开发者,你是否有过如下经历?   为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作.它在你的设备上也运行得很好,但是,上了应用商店后,还是有用户抱怨会闪退 !   如果你跟我一样是个完美主义者,你肯定想将应用做到尽善尽美.于是你打开代码准备修复闪退的问题……但是,从何处着手呢?   这时iOS崩溃日志派上用场了.在大多数情况下,你能从中了解到关于闪退的详尽.有用的信息.   通过本教程,你将学习到一些常见的崩溃日志案例,以及如何从开发设备和iTunes C…
转自raywenderlich   作为一名应用开发者,你是否有过如下经历?   为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作.它在你的设备上也运行得很好,但是,上了应用商店后,还是有用户抱怨会闪退 !   如果你跟我一样是个完美主义者,你肯定想将应用做到尽善尽美.于是你打开代码准备修复闪退的问题……但是,从何处着手呢?   这时iOS崩溃日志派上用场了.在大多数情况下,你能从中了解到关于闪退的详尽.有用的信息.   通过本教程,你将学习到一些常见的崩溃日志案例,…
这篇文章还可以在这里找到 英语 If you're new here, you may want to subscribe to my RSS feed or follow me on Twitter. Thanks for visiting! Learn how to make sense of crash logs! 本文作者是 Soheil Moayedi Azarpour, 他是一名独立iOS开发者. 作为一名应用开发者,你是否有过如下经历? 为确保你的应用正确无误,在将其提交到应用商店…
这篇文章还可以在这里找到 英语 Learn how to make sense of crash logs! 本文作者是 Soheil Moayedi Azarpour, 他是一名独立iOS开发者. 作为一名应用开发者,你是否有过如下经历?为确保你的应用正确无误,在将其提交到应用商店之前,你必定进行了大量的测试工作.它在你的设备上也运行得很好,但是,上了应用商店后,还是有用户抱怨会闪退 !如果你跟我一样是个完美主义者,你肯定想将应用做到尽善尽美.于是你打开代码准备修复闪退的问题……但是,从何处着…
转自:http://www.raywenderlich.com/zh-hans/30818/ios%E5%BA%94%E7%94%A8%E5%B4%A9%E6%BA%83%E6%97%A5%E5%BF%97%E6%8F%AD%E7%A7%98 这篇文章还能够在这里找到 英语 Learn how to make sense of crash logs! 本文作者是 Soheil Moayedi Azarpour, 他是一名独立iOS开发人员. 作为一名应用开发人员,你是否有过例如以下经历? 为确保…
日志主要分为六个部分:进程信息.基本信息.异常信息.线程回溯.线程状态和二进制映像. 我们在进行iPhone应用测试时必然会在"隐私"中找到不少应用的崩溃日志,但是不会阅读对于很多人来说简直头疼.在此为大家详细介绍一下具体的阅读方法,希望大家可以更快的定位BUG.首先我们先看一下从iPhone中随机抽出的一个Crash日志: //1. 进程信息 Hardware Model: iPhone9,1 Process: com.sogou.sogouinput.BaseKeyboard[44…
场景 4: 吃棒棒糖时闪退! 用户邮件说, “当rage master吃棒棒糖时应用就闪退…” 另一用户说, “我让rage master 吃棒棒糖,没几次应用就闪退了!”崩溃日志如下: Incident Identifier: 081E58F5-95A8-404D-947B-5E104B6BC1B1 CrashReporter Key: 5a56599d836c4f867f6eec76afee451bf9ae5f31 Hardware Model: iPhone4,1 OS Version:…
前言 我们在开发App过程中,因为连接到控制台,所以遇到问题会很容易找到问题代码.但是对于线上的App出现Crash的时候,我们不可能通过这种方式,也不现实,所以我们只能通过收集Crash信息,来解决Bug.而这种收集Crash信息并且分析定位到具体代码的第三方SDK很多.但是今天我们来自己实现一下. 收集 Crash 信息 Apple提供了NSException类来帮助我们收集异常信息. NSException is used to implement exception handling a…
这篇文章还可以在这里找到 英语 场景 4: 吃棒棒糖时闪退! 用户邮件说, "当rage master吃棒棒糖时应用就闪退-" 另一用户说, "我让rage master 吃棒棒糖,没几次应用就闪退了!" 崩溃日志如下: Incident Identifier: 081E58F5-95A8-404D-947B-5E104B6BC1B1 CrashReporter Key: 5a56599d836c4f867f6eec76afee451bf9ae5f31 Hardwa…
重点:Triggered by Thread这句话后边的线程号,快速定位问题出现在那个线程,是否是你的锅:Triggered by Thread所指的线程表示导致异常.崩溃的线程 下边内容转自简书 简介 当一个应用程序崩溃, 会产生一个崩溃报告(crash report) ,并存储到那个设备.崩溃报告描述了应用程序崩溃的条件,大多数情况会包含每个执行线程的一个完整的回溯,对我们调试应用程序的问题是非常有用的.你应该查看崩溃报告来了解你应用程序有什么崩溃,然后尝试修复它们. 崩溃报告必须被符号化(…
这篇文章还可以在这里找到 英语 场景 4: 吃棒棒糖时闪退! 用户邮件说, “当rage master吃棒棒糖时应用就闪退…” 另一用户说, “我让rage master 吃棒棒糖,没几次应用就闪退了!”崩溃日志如下: Incident Identifier: 081E58F5-95A8-404D-947B-5E104B6BC1B1 CrashReporter Key: 5a56599d836c4f867f6eec76afee451bf9ae5f31 Hardware Model: iPhone…
作为一名iOS移动应用开发者,为了确保你的应用程序正确无误,在将应用程序提交到应用商店之前,你必定会进行大量的测试工作:而且在你测试的过程中应用程序运行的很好,但是在应用商店上线之后,还是有用户抱怨应用程序会“闪退”!现在作为应用程序的开发人员你肯定会准备打开代码准备修复“闪退”的问题,但是就在这个时候你会发现,到底那段代码?那个地方的问题呢......:这个时候iOS崩溃日志就派上用场了,那么现在我们就来研究怎么获取应用崩溃的日志,以及从日志追踪到代码.   (一)什么是崩溃日志,从哪里能得到…
未符号化的崩溃日志就象一本天书,看不懂,更别谈分析崩溃原因了.所以我们在分析日志之前,要把日志翻译成我们可以看得懂的文字.这一步我们称之为符号化. 在iOS Crash分析(文一)中已经提到过符号化的两种方式: 1.利用Xcode符号化 2.利用symbolicatecrash脚本符号化 其实这两种分析方式都使用了同一个工具符号化:***atos***.atos是苹果提供的符号化工具,在Mac OS系统下默认安装.使用***atos***符号化需要dsym文件.dsym文件是在编译工程的时候生成…
iOS 中捕获程序崩溃日志 (2014-04-22 17:35:59) 转载▼     iOS开发中遇到程序崩溃是很正常的事情,如何在程序崩溃时捕获到异常信息并通知开发者,是大多数软件都选择的方法.下面就介绍如何在iOS中实现: 1. 在程序启动时加上一个异常捕获监听,用来处理程序崩溃时的回调动作  NSSetUncaughtExceptionHandler (&UncaughtExceptionHandler);  官方文档介绍:Sets the top-level error-handlin…
一.前言: 作为一个合格的iOS开发者,除了具有规范强悍的编码能力外,还应该具有过硬的查错纠错能力.在项目运行时,程序崩溃是不可避免的,遇到这个问题,有时会出现一大堆的crash日志,艹,貌似看不懂呀.其实没有那么可怕,我们可以将这些日志格式化,通过它来快速定位问题的所在,以便迅速搞定它. 二.分析: 首先我们来看一个crash日志,大略的介绍其中的几个重要的关键词: 关键词解释: 2.1. 进程信息第一部分是闪退进程的相关信息: Incident Identifier : 是崩溃报告的唯一标识…
1名词解释 1.1. UUID 一个字符串,在iOS上每个可执行文件或库文件都包含至少一个UUID,目的是为了唯一识别这个文件. 1.2. dwarfdump 苹果提供的命令行工具,其中一些功能就是查看可执行文件或库文件的UUID.示例: dwarfdump --uuid 应用名称.app/应用名称 dwarfdump --uuid 应用名称.dSYM 1.3. symbolicatecrash 苹果提供的命令行工具,可以将crash日志符号化为可读的堆栈信息.XCode6/XCode7版本中,…
在android APP测试过程中会发生不少的crash,目前抓取日志的主流方法是通过eclipse或者eclipse的ddms组件进行捕抓,这两种方法有个缺点是启动时非常耗时.本文通过adb程序与bat命令组合,只要3~5秒即可获取崩溃日志,非常快捷. 一.安装jdk JDK网上教程非常多,此处不再赘述.(好像不装也没关系,未实测) 二.工具列表 a)         adb包(v.1.0.31版本或以上,实测1031.1032都行) b)         logcat.bat文件(下文制作)…
iOS崩溃日志ips文件解析  一 简介 测试组的同事在进行稳定性测试时,通常会遇到一些崩溃,然后他们会将这些崩溃日志(一般是ips格式的文件)反馈给开发进行分析,但是这些ips文件中的内容通常是如下图这样的,都是一些十六进制的堆栈地址,如果仅仅根据这些堆栈地址,我们基本无法做任何事情,连最基本的崩溃定位都做不到.那么,在iOS开发中,还有一些其他的方法可以帮助我们将这些堆栈信息转化为可视化的日志文件,在转化后的可视化日志文件中,我们可以清晰定位到我们的应用崩溃的位置,如下图2所示. 这个转化的…
1. iTunes同步获取 大部分用户会使用iTunes软件来管理iPhone,这样同步的Crash日志就会同步到电脑上,我们需要在特定的路径里面查找 Mac OS X:~/Library/Logs/CrashReporter/MobileDevice 2. 使用第三方软件 : itools等 使用itools第三方软件对iPhone设备管理,打开高级功能 --崩溃日志,然后将需要的日志导出到电脑里…
原文再续,书接上回:<使用logcat快速抓取android崩溃日志>中提到的工具包可以下载拉~ <使用logcat快速抓取android崩溃日志>:http://www.cnblogs.com/medsonk/p/6344373.html android调试工具包v1.1.0.rar              <------------ 工具包点这下载!! google最新adb下载地址                     <------------ 需要fq下载…
参考: http://blog.csdn.net/diyagoanyhacker/article/details/41247367 http://blog.csdn.net/diyagoanyhacker/article/details/41247389 http://blog.csdn.net/diyagoanyhacker/article/details/41247411 http://www.cnblogs.com/smileEvday/p/Crash1.html 未符号化的崩溃日志就象一…
参考网址: [转载]https://www.jianshu.com/p/4de55d73c82b [转载]https://blog.csdn.net/qq_26544491/article/details/54909043 问题描述 往往如此,自己测试.测试人员测试,都没有问题,一到客户手里,更重bug,各种崩溃.然后客户的崩溃又复现不了,只好看崩溃日志.所以,个人建议,项目开始时,最好把crash功能加上,有很多第三方的工具:友盟.bugly.蒲公英等.目前,因为时间紧急用的蒲公英.集成过程,…
一.造成崩溃的原因 1.代码中存在bug 2.Watchdog 超时机制 3.用户强制退出 4.低内存终止 5.其他违法系统规则的操作,大部分是内存问题 二.崩溃的类型 1.信号错误类 (1)EXC_BAD_ACCESS (2)SIGSEVG (3)SIGBUS (4)SIGTRAP (5)EXC_ARITHETIC (6)SIGILL (7)SIGABRT (8)Watchdog 超时 2.异常类 (1)NSRangeException(越界异常) NSRangeException是iOS开发…
从微软推出第一个版本的.NET Framework的时候,就在“System.Diagnostics”命名空间中提供了Debug和Trace两个类帮助我们完成针对调试和跟踪信息的日志记录.在.NET Framework 2.0中,微软引入了TraceSource并对跟踪日志系统进行了优化,优化后的跟踪日志系统在.NET Core中又经过了相应的简化..NET Core的日志模型借助TraceSourceLoggerProvider实现对TraceSource的整合,在正式介绍这个Logger之前…
iOS Crash 分析(文二)-崩溃日志组成 现在我们看一个淘宝iOS主客崩溃的例子: ### 1.进程信息 ### Incident Identifier: E4201F10-6F5F-40F9-B938-BB3DA8ED7D50 CrashReporter Key: TODO Hardware Model: iPhone4,1 Process: Taobao4iPhone [3538] Path: /var/mobile/Applications/E3B51E77-D44D-4B3E-87…
参考资料:http://www.cocoachina.com/industry/20130725/6677.html 1.获得崩溃日志 2.崩溃日志实例 3.符号化崩溃日志 4.低内存闪退 获得崩溃日志 1.1Xcode上选择Windows/Devices;选中设备,点击Views Device Logs可以看到设备Crash日志 1.2应用提交到App Store后,你也能从 iTunes Connect 获取到用户的崩溃日志. 登录到 iTunes Connect 上, 选择 Manage…
Linux 利用 locate 和 find 查找文件 命令 locate 用于快速查找文件.文件夹.此命令并没有在磁盘上查找所有文件,而是在预先建立的数据库里进行搜索.可以使用 updatedb 命令建立.更新数据库. find 命令更加高级,使用方法:find 查找位置 查找参数:   1 2 3 4 5 find . -name *upliu* find / -name *.conf find . -type d find . -perm 777 find . -name "Do*&quo…