崩溃llibobjc.A.dylib objc_release + 36

问题描述 投票:0回答:1

我使用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 

 });
ios objective-c macos crashlytics
1个回答
0
投票

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

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

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

© www.soinside.com 2019 - 2024. All rights reserved.