ios调试篇 ~ 之app已经部署(Debugging Deployed iOS Apps)

Debugging Deployed iOS Apps

对于iOS 的app部署的进行应用测试,就涉及到打包
http://www.jianshu.com/p/38443224ac89 打包的选项参考

Q: How can I debug a deployed app without Xcode's debugger?(也就是没有使用模拟器(debugger)来进行调试的时候)怎么处理?
也就是怎么测试不是在模拟器上使用debugger来进行调试的。(也就是debugger的方式)【模拟器或者真机连接上去,经过】
通过打包的方式进行调试。

尤其是在偶现的问题上,不可能连接上手机进行测试或者很容易重新的时候,我们应该怎么样进行处理?

这个时候应该只能够通过打包的方式进行测试了;
1) 这个时候就应该通过打包的方式进行部署到手机里面比较好(这样就有对应的dsym文件)【deployed your app, either through the App Store or as an Ad Hoc or Enterprise build,】这个时候就就只能够通过对应的crash log 或者 终端输出的内容;
这样就可以通过dsym文件来进行处理;
2) 通过rich nslog来进行打出对应的日志;
Q: How can I add context information - such as the current method or line number - to my logging statements?
c预处理器提供了标准的内容包括当前文件、行数、函数、
oc有 cmd(当前函数转为字符串输出) ===> 用于调试

ios调试篇 ~ 之app已经部署(Debugging Deployed iOS Apps)_第1张图片
rich NSLog所需要的参数

ios调试篇 ~ 之app已经部署(Debugging Deployed iOS Apps)_第2张图片
rich NSLog 所需要的一个参数

https://developer.apple.com/library/content/qa/qa1669/_index.html 对应的官网地址

PS :
(1)一个是debugger的方式进行实时调试
(2)一个通过离线的方式(打包) ,这种方式可以拿到dsym文件
(3)离线测试,不过手机上的包是直接运行程序进行部署的(这种方式好像不能够拿到dsym文件)

获取崩溃日志方式以及步骤:
1、Getting Crash Logs and Console Output
(邮件的方式)获取崩溃日志和终端上的输出;


ios调试篇 ~ 之app已经部署(Debugging Deployed iOS Apps)_第3张图片
邮件的方式

(2)Getting Crash Logs and Console Output From a Device Using Xcode
(xcode的使用) 操作过程:


ios调试篇 ~ 之app已经部署(Debugging Deployed iOS Apps)_第4张图片
xcode的方式

(3)Enabling App Store Diagnostic Reporting

  1. Open the Organizer window in Xcode 6.3 and above
  2. Select "Crashes" at the top. The available crash logs can then be found within this window.

(4)注意符号化对应的log 【symbolicate】

你可能感兴趣的:(ios调试篇 ~ 之app已经部署(Debugging Deployed iOS Apps))