崩溃llibobjc.A.dylib objc_release + 36

时间:2018-03-02 14:46:26

标签: ios objective-c macos crashlytics

我使用crashlytics来解决我的应用程序的崩溃,我目前正在使用Crashlytics版本:3.9.3。有些用户正在崩溃,我似乎无法在我的机器上重现。这是来自Fabric的日志:

    Crashed: com.apple.root.default-qos
        EXC_BAD_ACCESS KERN_INVALID_ADDRESS 0x00004a4b9a43bec8

    #37. Crashed: com.apple.root.default-qos
    0  libobjc.A.dylib                0x7fff6b43d184 objc_release + 36
    1  MyApp                        0x10805ad2d __66-[AppManager getCountriesDelegate:]_block_invoke (AppManager.m:1412)
    2  libdispatch.dylib              0x7fff6c006591 _dispatch_call_block_and_release + 12
    3  libdispatch.dylib              0x7fff6bffed50 _dispatch_client_callout + 8
    4  libdispatch.dylib              0x7fff6c00bc61 _dispatch_queue_override_invoke + 880
    5  libdispatch.dylib              0x7fff6c000941 _dispatch_root_queue_drain + 515
    6  libdispatch.dylib              0x7fff6c0006ed _dispatch_worker_thread3 + 101
    7  libsystem_pthread.dylib        0x7fff6c2c31ca _pthread_wqthread + 1387
    8  libsystem_pthread.dylib        0x7fff6c2c2c4d start_wqthread + 13

- (void) getCountriesDelegate:(id<AppManagerDelegate>)delegate
{
    __weak __typeof(id<AppManagerDelegate>) weakDelegate  = delegate;
    __weak __typeof(self) weakSelf = self;

    dispatch_async(dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{ //my function definition 

 });

1 个答案:

答案 0 :(得分:0)

有多种原因可以获得EXC_BAD_ACCESS KERN_INVALID_ADDRESS错误代码。 Appel's documentation说:

  

EXC_BAD_ACCESS / KERN_INVALID_ADDRESS - 这是由线程引起的   访问未映射的内存。它可以由数据访问触发   或取指令;线程状态部分描述了如何操作   说出不同之处。

你应该深入了解你的班级AppManager。正如崩溃日志所说,崩溃发生在方法AppManager.m中文件getCountriesWithRespectToPurposeAndFavoriteDelegate:的第1412行。

相关问题