2

私のベータ テスターの 1 人は、私のアプリが彼女の携帯電話で繰り返しクラッシュしていると報告しました。しかし、私はクラッシュ ログを取得し、これらの内容を読み取る方法を理解しようとしています。そのうちの 2 つはかなり似ていました (1 つは下に掲載されています)。これらをじっと見つめることになると、誰かが私の手を少し握ってくれる必要があります。私は当初、メモリの問題を疑っていましたが、自分自身をフラッディングさせない限り、メモリ リークはクラッシュを引き起こさないと誰かが言いました。このログには、メモリについては何も言及されていません。何が起こったのかについてのヒントを誰か教えてもらえますか?

Date/Time:       2012-12-19 10:09:05.852 -0700
OS Version:      iOS 6.0.1 (10A523)
Report Version:  104

Exception Type:  00000020
Exception Codes: 0x000000008badf00d
Highlighted Thread:  0

Application Specific Information:
com.graphiteGames.Capture-This failed to launch in time

Elapsed total CPU time (seconds): 2.730 (user 2.730, system 0.000), 14% CPU 
Elapsed application CPU time (seconds): 0.930, 5% CPU

Thread 0 name:  Dispatch queue: com.apple.main-thread
Thread 0:
0   libsystem_kernel.dylib          0x33fc40fc __psynch_mutexwait + 24
1   libsystem_c.dylib               0x35438124 pthread_mutex_lock + 388
2   Capture This                    0x000a1a7a -[PFObject objectForKey:] (PFObject.m:1572)
3   Capture This                    0x00092c06 -[RootTableView tableView:cellForRowAtIndexPath:] (RootTableView.m:228)
4   UIKit                           0x37f49540 -[UITableView(UITableViewInternal) _createPreparedCellForGlobalRow:withIndexPath:] + 408
5   UIKit                           0x37f2e306 -[UITableView(_UITableViewPrivate) _updateVisibleCellsNow:] + 1306
6   UIKit                           0x37f457c2 -[UITableView layoutSubviews] + 202
7   UIKit                           0x37f017fe -[UIView(CALayerDelegate) layoutSublayersOfLayer:] + 254
8   QuartzCore                      0x30db5d5e -[CALayer layoutSublayers] + 210
9   QuartzCore                      0x30db58fc CA::Layer::layout_if_needed(CA::Transaction*) + 456
10  QuartzCore                      0x30de47a2 -[CALayer layoutIfNeeded] + 138
11  UIKit                           0x37fab0c4 -[UIViewController window:setupWithInterfaceOrientation:] + 204
12  UIKit                           0x37faa2b0 -[UIWindow _setRotatableClient:toOrientation:updateStatusBar:duration:force:isRotating:] + 3616
13  UIKit                           0x37fa9482 -[UIWindow _setRotatableClient:toOrientation:updateStatusBar:duration:force:] + 42
14  UIKit                           0x37fa940c -[UIWindow _setRotatableViewOrientation:duration:force:] + 64
15  UIKit                           0x380df17c __57-[UIWindow _updateToInterfaceOrientation:duration:force:]_block_invoke_0 + 100
16  UIKit                           0x37f67676 -[UIWindow _updateToInterfaceOrientation:duration:force:] + 214
17  UIKit                           0x37f673b8 -[UIWindow setAutorotates:forceUpdateInterfaceOrientation:] + 688
18  UIKit                           0x37f66d26 -[UIViewController _tryBecomeRootViewControllerInWindow:] + 154
19  UIKit                           0x37f5de9e -[UIWindow addRootViewControllerViewIfPossible] + 366
20  UIKit                           0x37f59ae0 -[UIWindow _setHidden:forced:] + 360
21  UIKit                           0x37f9b1c4 -[UIWindow makeKeyAndVisible] + 56
22  UIKit                           0x37f5e832 -[UIApplication _callInitializationDelegatesForURL:payload:suspended:] + 1662
23  UIKit                           0x37f5683e -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 694
24  UIKit                           0x37efec34 -[UIApplication handleEvent:withNewEvent:] + 1000
25  UIKit                           0x37efe6c8 -[UIApplication sendEvent:] + 68
26  UIKit                           0x37efe116 _UIApplicationHandleEvent + 6150
27  GraphicsServices                0x34b1e5a0 _PurpleEventCallback + 588
28  GraphicsServices                0x34b1e1ce PurpleEventCallback + 30
29  CoreFoundation                  0x35e34170 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 32
30  CoreFoundation                  0x35e34112 __CFRunLoopDoSource1 + 134
31  CoreFoundation                  0x35e32f94 __CFRunLoopRun + 1380
32  CoreFoundation                  0x35da5eb8 CFRunLoopRunSpecific + 352
33  CoreFoundation                  0x35da5d44 CFRunLoopRunInMode + 100
34  UIKit                           0x37f55478 -[UIApplication _run] + 664
35  UIKit                           0x37f522f4 UIApplicationMain + 1116
36  Capture This                    0x0008b8ba main (main.m:16)
37  libdyld.dylib                   0x34a94b1c start + 0

Thread 1 name:  Dispatch queue: com.apple.libdispatch-manager
Thread 1:
0   libsystem_kernel.dylib          0x33fb4648 kevent64 + 24
1   libdispatch.dylib               0x34a7d4ec _dispatch_mgr_invoke + 792
2   libdispatch.dylib               0x34a6fdf4 _dispatch_mgr_thread$VARIANT$up + 32

Thread 2 name:  Dispatch queue: com.apple.root.default-priority
Thread 2:
0   libsystem_kernel.dylib          0x33fc408c __psynch_cvwait + 24
1   libsystem_c.dylib               0x35440d2a _pthread_cond_wait + 642
2   libsystem_c.dylib               0x3544af14 pthread_cond_wait + 36
3   Foundation                      0x3592aa4c -[__NSOperationInternal waitUntilFinished] + 144
4   Capture This                    0x000e4710 -[PFNetworkCommandRunner runInOperation:callback:] (PFNetworkCommandRunner.m:84)
5   Capture This                    0x000e4f1e -[PFRetryingCommandRunner runInOperation:callback:] (PFRetryingCommandRunner.m:52)
6   Capture This                    0x000e5cba -[PFOperation runInThisThread:] (PFOperation.m:32)
7   Capture This                    0x0009dbb2 -[PFObject(Private) fetchWithLocking:error:] (PFObject.m:942)
8   Capture This                    0x000ae44e -[PFUser fetchWithLocking:error:] (PFUser.m:1001)
9   Capture This                    0x000a1520 __39-[PFObject fetchInBackgroundWithBlock:]_block_invoke_0 (PFObject.m:1500)
10  Capture This                    0x000d3db6 __25-[PFBackgroundTask start]_block_invoke_0 (PFBackgroundTask.m:59)
11  libdispatch.dylib               0x34a6e11c _dispatch_call_block_and_release + 8
12  libdispatch.dylib               0x34a7c254 _dispatch_root_queue_drain + 256
13  libdispatch.dylib               0x34a7c3b4 _dispatch_worker_thread2 + 80
14  libsystem_c.dylib               0x3543da0e _pthread_wqthread + 358
15  libsystem_c.dylib               0x3543d8a0 start_wqthread + 4

Thread 3 name:  WebThread
Thread 3:
0   libsystem_kernel.dylib          0x33fb3eb4 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x33fb4048 mach_msg + 36
2   CoreFoundation                  0x35e34040 __CFRunLoopServiceMachPort + 124
3   CoreFoundation                  0x35e32d9e __CFRunLoopRun + 878
4   CoreFoundation                  0x35da5eb8 CFRunLoopRunSpecific + 352
5   CoreFoundation                  0x35da5d44 CFRunLoopRunInMode + 100
6   WebCore                         0x31a8aa40 _ZL12RunWebThreadPv + 440
7   libsystem_c.dylib               0x3544830e _pthread_start + 306
8   libsystem_c.dylib               0x354481d4 thread_start + 4

Thread 4:
0   libsystem_kernel.dylib          0x33fb3eb4 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x33fb4048 mach_msg + 36
2   CoreFoundation                  0x35e34040 __CFRunLoopServiceMachPort + 124
3   CoreFoundation                  0x35e32d9e __CFRunLoopRun + 878
4   CoreFoundation                  0x35da5eb8 CFRunLoopRunSpecific + 352
5   CoreFoundation                  0x35da5d44 CFRunLoopRunInMode + 100
6   Foundation                      0x358df78a -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
7   Foundation                      0x35983058 -[NSRunLoop(NSRunLoop) run] + 76
8   Capture This                    0x000d7c9a +[PFNetworkingUtils networkThreadMain] (PFNetworkingUtils.m:32)
9   Foundation                      0x3598c678 __NSThread__main__ + 968
10  libsystem_c.dylib               0x3544830e _pthread_start + 306
11  libsystem_c.dylib               0x354481d4 thread_start + 4

Thread 5:
0   libsystem_kernel.dylib          0x33fc4d98 __workq_kernreturn + 8
1   libsystem_c.dylib               0x3543dcf6 _pthread_workq_return + 14
2   libsystem_c.dylib               0x3543da12 _pthread_wqthread + 362
3   libsystem_c.dylib               0x3543d8a0 start_wqthread + 4

Thread 6:
0   libsystem_kernel.dylib          0x33fc408c __psynch_cvwait + 24
1   libsystem_c.dylib               0x35440d2a _pthread_cond_wait + 642
2   libsystem_c.dylib               0x3544af14 pthread_cond_wait + 36
3   Foundation                      0x35908cca -[NSCondition wait] + 190
4   Capture This                    0x000c89a8 -[PFCommandCache runLoop] (PFCommandCache.m:491)
5   Foundation                      0x3598c678 __NSThread__main__ + 968
6   libsystem_c.dylib               0x3544830e _pthread_start + 306
7   libsystem_c.dylib               0x354481d4 thread_start + 4

Thread 7:
0   libsystem_kernel.dylib          0x33fb3eb4 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x33fb4048 mach_msg + 36
2   CoreFoundation                  0x35e34040 __CFRunLoopServiceMachPort + 124
3   CoreFoundation                  0x35e32d9e __CFRunLoopRun + 878
4   CoreFoundation                  0x35da5eb8 CFRunLoopRunSpecific + 352
5   CoreFoundation                  0x35da5d44 CFRunLoopRunInMode + 100
6   Foundation                      0x358df78a -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 250
7   Foundation                      0x35983058 -[NSRunLoop(NSRunLoop) run] + 76
8   Capture This                    0x000eb5f0 +[PF_AFURLConnectionOperation networkRequestThreadEntryPoint:] (PF_AFURLConnectionOperation.m:151)
9   Foundation                      0x3598c678 __NSThread__main__ + 968
10  libsystem_c.dylib               0x3544830e _pthread_start + 306
11  libsystem_c.dylib               0x354481d4 thread_start + 4

Thread 8 name:  com.apple.NSURLConnectionLoader
Thread 8:
0   libsystem_kernel.dylib          0x33fb3eb4 mach_msg_trap + 20
1   libsystem_kernel.dylib          0x33fb4048 mach_msg + 36
2   CoreFoundation                  0x35e34040 __CFRunLoopServiceMachPort + 124
3   CoreFoundation                  0x35e32d9e __CFRunLoopRun + 878
4   CoreFoundation                  0x35da5eb8 CFRunLoopRunSpecific + 352
5   CoreFoundation                  0x35da5d44 CFRunLoopRunInMode + 100
6   Foundation                      0x35908bc8 +[NSURLConnection(Loader) _resourceLoadLoop:] + 304
7   Foundation                      0x3598c678 __NSThread__main__ + 968
8   libsystem_c.dylib               0x3544830e _pthread_start + 306
9   libsystem_c.dylib               0x354481d4 thread_start + 4

Thread 9 name:  com.apple.CFSocket.private
Thread 9:
0   libsystem_kernel.dylib          0x33fc4594 __select + 20
1   CoreFoundation                  0x35e381f2 __CFSocketManager + 674
2   libsystem_c.dylib               0x3544830e _pthread_start + 306
3   libsystem_c.dylib               0x354481d4 thread_start + 4

Unknown thread crashed with unknown flavor: 5, state_count: 1

そして、アプリは要求どおりにメソッドの起動を完了しました:

  • (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions {

    [Parse setApplicationId:@"key"
                  clientKey:@"key"];
    [PFFacebookUtils initializeWithApplicationId:@"id"];
    [application registerForRemoteNotificationTypes:UIRemoteNotificationTypeBadge|
     UIRemoteNotificationTypeAlert|
     UIRemoteNotificationTypeSound];
    
    //--set background and camera images
    NSUserDefaults *defaults = [NSUserDefaults standardUserDefaults];
    if (![defaults objectForKey:BACKGROUND_IMAGE]){
        [[NSUserDefaults standardUserDefaults] setObject:@"background0.png" forKey:BACKGROUND_IMAGE];
    }
    if (![defaults objectForKey:CAMERA_BUTTON]){
        [defaults setObject:@"cameraButton0.png" forKey:CAMERA_BUTTON];
    }
    if (![defaults objectForKey:PURCHASED_CAMERAS]){
        NSMutableArray *cameras = [[NSMutableArray alloc] init];
        [cameras addObject:@"cameraButton0.png"];
        [defaults setObject:cameras forKey:PURCHASED_CAMERAS];
    }
    if (![defaults objectForKey:PURCHASED_BACKGROUNDS]){
        NSMutableArray *back = [[NSMutableArray alloc] init];
        [back addObject:@"background0.png"];
        [defaults setObject:back forKey:PURCHASED_BACKGROUNDS];
    }
    if ([PFUser currentUser]){
        [[PFUser currentUser] refreshInBackgroundWithBlock:^(PFObject *object, NSError *error) {
            if (error){
                [[[UIAlertView alloc] initWithTitle:@"Couldn't refresh user data" message:@"Please try again later" delegate:nil cancelButtonTitle:@"OK" otherButtonTitles: nil] show];
            }
            [Utilities refreshCurrentUser];
        }];
    }
    [[UIApplication sharedApplication] cancelAllLocalNotifications];
    
    return YES;
    

    }

4

1 に答える 1

0

私が理解していることから、iOS には常に実行中のアプリケーションをチェックするウォッチドッグがあります。アプリケーションが 20 秒以上応答しない場合、アプリケーションは自動的に強制終了されます。これがここで起こっていることかどうかはわかりませんが、そうかもしれません。

アプリケーションの起動時に実行されているプロセスを調べ始めました。多くのアプリケーションがロードされてバックグラウンドで実行されていると、このような問題が発生し、処理が遅くなり、アプリケーションが応答していないように見える場合があります。

于 2013-01-03T18:02:16.867 に答える