zoukankan      html  css  js  c++  java
  • Application received signal SIGABRT

    Application received signal SIGABRT
    (null)
    ((
    	0   CoreFoundation                      0x0000000182bbadc8 <redacted> + 148
    	1   libobjc.A.dylib                     0x000000018221ff80 objc_exception_throw + 56
    	2   CoreFoundation                      0x0000000182bbacf8 <redacted> + 0
    	3   Lazy                                0x10034060c Lazy + 3409420
    	4   libsystem_platform.dylib            0x000000018281993c _sigtramp + 52
    	5   libsystem_pthread.dylib             0x0000000182820ef8 pthread_kill + 112
    	6   libsystem_c.dylib                   0x00000001826c5dc8 abort + 140
    	7   libsystem_c.dylib                   0x000000018269ae7c basename + 0
    	8   CoreGraphics                        0x000000018411b0c8 <redacted> + 3444
    	9   CoreGraphics                        0x00000001840283c4 <redacted> + 152
    	10  CoreGraphics                        0x000000018402a470 <redacted> + 332
    	11  CoreGraphics                        0x00000001840328e4 CGContextFillRects + 104
    	12  CoreGraphics                        0x0000000184032974 CGContextFillRect + 52
    	13  Lazy                                0x10014f98c Lazy + 1374604
    	14  Lazy                                0x10014f058 Lazy + 1372248
    	15  Lazy                                0x100257eb0 Lazy + 2457264
    	16  Lazy                                0x100254f28 Lazy + 2445096
    	17  UIKit                               0x0000000188045568 <redacted> + 76
    	18  UIKit                               0x0000000187d3b0b4 <redacted> + 460
    	19  UIKit                               0x0000000187df9a00 <redacted> + 300
    	20  UIKit                               0x0000000187ed5d30 <redacted> + 1844
    	21  UIKit                               0x00000001882adf30 <redacted> + 164
    	22  UIKit                               0x0000000187ec2728 <redacted> + 172
    	23  UIKit                               0x0000000187d4f7a0 <redacted> + 784
    	24  UIKit                               0x00000001882af530 <redacted> + 72
    	25  UIKit                               0x0000000187d0e4d8 <redacted> + 372
    	26  UIKit                               0x0000000187d0b254 <redacted> + 2404
    	27  UIKit                               0x0000000187d4d610 <redacted> + 1132
    	28  UIKit                               0x0000000187d4cc0c <redacted> + 764
    	29  UIKit                               0x0000000187d1d04c <redacted> + 248
    	30  UIKit                               0x0000000187d1b628 <redacted> + 6568
    	31  CoreFoundation                      0x0000000182b7109c <redacted> + 24
    	32  CoreFoundation                      0x0000000182b70b30 <redacted> + 540
    	33  CoreFoundation                      0x0000000182b6e830 <redacted> + 724
    	34  CoreFoundation                      0x0000000182a98c50 CFRunLoopRunSpecific + 384
    	35  GraphicsServices                    0x0000000184380088 GSEventRunModal + 180
    	36  UIKit                               0x0000000187d86088 UIApplicationMain + 204
    	37  Lazy                                0x10021cd9c Lazy + 2215324
    	38  libdyld.dylib                       0x00000001826368b8 <redacted> + 4
    )
    
    dSYM UUID: 8822064E-9CEB-3B52-A2A3-9A35CAE53E06
    CPU Type: arm64
    Slide Address: 0x0000000100000000
    Binary Image: Lazy
    Base Address: 0x00000001000c0000

    这个问题一般是由于程序访问了不存在内存地址造成的崩溃

    解决步骤:

    1、找到当时上传代码时使用的DYSM文件,这文件通常在.xcarchive文件中。 右键该文件, 然后通过终端工具跳转到下面的DWARF文件夹中:

    2、找到左边列是你的app名字的几列 看对应的右面内存地址并依次执行 。我的是arm64的cpu报错,所以下面用arm64,如果其他的是armv7或armv7s 相应的更改就可以
    $ atos -arch arm64 -o Lazy 0x10014f98c

    $ atos -arch arm64 -o Lazy 0x10014f058

    $ atos -arch arm64 -o Lazy 0x100257eb0

    ......

    有几个执行几个,并依次记录打印结果

    就可以看到这处内存地址反编译回来的源码行,可以有效地帮助分析原因。 
    注意,如果定位到的地址是UmengSignalHandler,要知道这个不是错误,是捕捉crash的方法,本身不引起crash, 当crash发生时由它来捕捉,直接忽略crash log中的 UmengSignalHandler 部分即可。

    注:

    如果没有打印出源码行日志,出现类似

    atos cannot load symbols for the file Lazy for architecture armv7.
    这样的打印说明你的$ atos -arch arm64 -o Lazy 0x100257eb0  这个命令可能cpu类型不对或者内存地址不对

  • 相关阅读:
    day15—jQuery UI之widgets插件
    day14—jQuery UI 之dialog部件
    day13—CSS之导航栏
    day12—jQuery ui引入及初体验
    day11—前端学习之我不想看书
    struts2的action方法匹配以及通配符的使用
    Java中的static
    ActiveMQ的简单使用
    MS DOS 常用命令整理
    IntelliJ IDEA 中 Ctrl+Alt+Left/Right 失效
  • 原文地址:https://www.cnblogs.com/Hakim/p/7839204.html
Copyright © 2011-2022 走看看