技术标签: iOS 开发
普遍使用的方法是用symbolicatecrash来解析crash log:
导出crash log 通过Xcode的Organizer查看某台iphone设备的DeviceLog,选择需要的crash log,导出XXX.crash文件。
用symbolicatecrash来解析crash log:
1.首先找到symbolicatecrash所在目录路径
xcode6.0以前的位置:/Applications/Xcode.app/Contents/Developer/Platforms/iPhoneOS.platform/Developer/Library/PrivateFrameworks/DTDeviceKit.framework/Versions/A/Resources
xcode6.0以后的位置:/Applications/Xcode.app/Contents/SharedFrameworks/DTDeviceKitBase.framework/Versions/A/Resources
2.找到app对应的.dSYM 文件
首先找到最后一次打包提交appstore的archive文件,显示包内容,app对应的.dSYM文件就在dSYMs文件夹中
3.讲 projectName.app.dSYM 文件 和 crash 日志文件放在同一个目录中
4.打开Terminal,并且定位到.dSYM文件和.crash文件所在的文件夹
5.设置DEVELOPER_DIR系统变量
cd ~/
vi .bash_profile
并输入如下内容
export DEVELOPER_DIR="/Applications/Xcode.app/Contents/Developer"
保存并退出
6.继续输入 ./symbolicatecrash crashFile.crash projectName.app.dSYM > crash.txt
7.打开目录中的crash.txt文件,迅速定位错误代码
注意:symbolicatecrash的参数顺序,否则会报类似如下错误
Use of uninitialized value $data in substitution (s///) at /usr/bin/symbolicatecrash line 678.
Use of uninitialized value $data in substitution (s///) at /usr/bin/symbolicatecrash line 681.
Use of uninitialized value $data in substitution (s///) at /usr/bin/symbolicatecrash line 685.
Use of uninitialized value in pattern match (m//) at /usr/bin/symbolicatecrash line 404.
Use of uninitialized value in scalar assignment at /usr/bin/symbolicatecrash line 418.
No crash report version in XXX.app.dSYM/ at /usr/bin/symbolicatecrash line 954.
在electron程序中,引用了electron-config组件,使用webpack打包未报错,但运行时报错"Uncaught Exception:TypeError:Cannot read property 'filename' of underfined"
思路:小球要移动,移动一段时间消失,需要translate+destory; 一个小球不够,需要多次COPY预制体小球,copy;一、COPY代码,把这个代码放在不是复制的球的其他物体上,然后把预制体球拖入a中using UnityEngine;using System.Collections;public class copy : MonoBehav
作者:Shor,Annchain核心开发成员,中科大毕业。负责annchain高性能p2p网络、通信与编码、基于DAG的高效交易同步、交易执行逻辑、wasm虚拟机智能合约平台、rpc等模块的研发以及系统优化。(本文一切著作权归annchain技术团队所有,未经许可,不得转载。若需转载请联系页尾二维码。)VFR简介可验证随机函数(VerifiableRandomFunction)...
文 | 陈嘉奇编 | 小轶从小到大,数学都是一门令人头秃充满魅力的学科。从基本的代数、几何,到高数微积分,各类数学问题都对答题者的逻辑推理能力都有着不同程度的挑战。而逻辑推理能力一直以来都...
一、目的1、学习 websocket 协议通信。2、使用libwebsockets 库建立服务端和客户端。二、实验环境开发语言:C++OS 平台:windows 7SDK:VS 2008第三库:Libwebsockets,openssl三、简介Libwebsockets(LWS)是一个灵活,轻量级的纯C库,可使用无阻塞事件循环以很小的占用空间轻松...
DLL的优点简单的说,dll有以下几个优点:1) 节省内存。同一个软件模块,若是以源代码的形式重用,则会被编译到不同的可执行程序中,同时运行这些exe时这些模块的二进制码会被重复加载到内存中。如果使用dll,则只在内存中加载一次,所有使用该dll的进程会共享此块内存(当然,像dll中的全局变量这种东西是会被每个进程复制一份的)。2) 便于不需编译的软件系统升级,若一个软...
vue3.0 使用echarts和百度地图进行地图展示,自定义标注和自定义信息窗口,infoBox,infoWindow
针对其他用户能够连接服务器mysql,但是本地连接报错 'Your password has expired. To log in you must change it using a client that supports expired passwords.';解决方案如下:进入mysql所在目录用CMD运行Mysql>mysql -u root -p 回车后输入密码Mysq
find_shape_model(Image, //搜索图像 ModelID, //模板句柄 AngleStart, // 搜索时的起始角度
Aspose.wordAspose.Words是一款先进的类库,通过它可以直接在各个应用程序中执行各种文档处理任务。Aspose.Words支持DOC,OOXML,RTF,HTML,OpenDocument, PDF, XPS, EPUB和其他格式。使用Aspose.Words,您可以生成,更改,转换,渲染和打印文档而不使用Microsoft Word。上面一句话换而言之是他...
原文转载:http://www.iewb.net/qg/4055.html在ubuntu、fedora、桌面版的Centos中打开Chrome、邮件系统或者配置无线网络的时候会提示“Enter Password for Default Keyring to Unlock”,可是如果你无论如何也记不起密码的时候就比较闹心,这个时候怎么办呢? 其实这个出现这个提示和博客上文中提到的密
首先,奉上思维导图。教材为《微机原理与接口技术》(第2版)李珍香主编 清华大学出版社。一万多字的总结。某些部分需要配合课本。目录微型计算机基础8086微处理器寻址方式指令系统微机原理与接口技术 微型计算机基础 微型计算机概述计算机系统是一种由硬件系统和软件系统组成的复杂电子装置。它能够存储程序、存储原始数据、中间结果和最终运算结果,并自动完成运算,是一种能对各种数字化信息进行处理的“信息处理机”。计算机按照性能、价格和体积等综合指标,可分为巨型计算机、大型计算机、