2

以下是我得到的崩溃日志:

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0:
0   libsystem_kernel.dylib          0x398d6f04 semaphore_wait_trap + 8
1   libdispatch.dylib               0x3980f82a _dispatch_semaphore_wait_slow + 178
2   libxpc.dylib                    0x3992668a xpc_connection_send_message_with_reply_sync + 150
3   SystemConfiguration             0x33539850 _reach_server_target_status + 976
4   SystemConfiguration             0x3353a27a __SCNetworkReachabilityServer_targetStatus + 38
5   SystemConfiguration             0x3351a952 __SCNetworkReachabilityGetFlags + 318
6   SystemConfiguration             0x3351b318 SCNetworkReachabilityGetFlags + 212
7   AppName                         0x000e8830 -[Reachability currentReachabilityStatus] (Reachability.m:261)
8   AppName                         0x0011f168 -[CommonClass checkNetworkStatus] (CommonClass.mm:3917)
9   AppName                         0x0011f6a0 -[CommonClass isNetworkReachable] (CommonClass.mm:3974)
10  AppName                         0x000d55de -[AppDelegate applicationWillEnterForeground:] (USyncAppDelegate.m:196)
11  UIKit                           0x336f52ba -[UIApplication _sendWillEnterForegroundCallbacks] + 90
12  UIKit                           0x336f4ee2 -[UIApplication _handleApplicationResumeEvent:] + 1090
13  UIKit                           0x3354cd54 -[UIApplication handleEvent:withNewEvent:] + 1288
14  UIKit                           0x3354c6c8 -[UIApplication sendEvent:] + 68
15  UIKit                           0x3354c116 _UIApplicationHandleEvent + 6150
16  GraphicsServices                0x3524f5a0 _PurpleEventCallback + 588
17  CoreFoundation                  0x31719680 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 12
18  CoreFoundation                  0x31718ee4 __CFRunLoopDoSources0 + 208
19  CoreFoundation                  0x31717cb2 __CFRunLoopRun + 642
20  CoreFoundation                  0x3168aeb8 CFRunLoopRunSpecific + 352
21  CoreFoundation                  0x3168ad44 CFRunLoopRunInMode + 100
22  GraphicsServices                0x3524e2e6 GSEventRunModal + 70
23  UIKit                           0x335a02fc UIApplicationMain + 1116
24  AppName                         0x000d3b42 main (main.m:14)
25  AppName                         0x000d24d4 start + 36

正如它所暗示的,它是一个信号量等待陷阱,我认为与锁有关。这是 Reachability API 的问题还是我调用不正确的问题。请帮忙。

这就是我的 checkNetworkStatus 方法的样子:

- (void) checkNetworkStatus {

NetworkStatus internetStatus = [internetReachable currentReachabilityStatus];
switch (internetStatus) {
    case NotReachable:
    {
        //The internet is down

        break;
    }
    case ReachableViaWiFi:
    {
        //The internet is working via WIFI

        break;
    }
    case ReachableViaWWAN:
    {
        //The internet is working via WWAN

        break;
    }
}

NetworkStatus hostStatus = [hostReachable currentReachabilityStatus];
switch (hostStatus) {
    case NotReachable:
    {
        //A gateway to the host server is down

        break;
    }
    case ReachableViaWiFi:
    {
        //A gateway to the host server is working via WIFI

        break;
    }
    case ReachableViaWWAN:
    {
        //A gateway to the host server is working via WWAN

        break;
    }
}
}
4

0 回答 0