私は助けが必要です。iOSアプリのバックグラウンドで異常なクラッシュが発生する
私はObjective-cで書かれた古いiOSアプリを開発中です。 2014年にリリースされましたが、現在はXcode 8に移行しました。移行後は、アプリがバックグラウンドになっている間に異常なクラッシュを除いてすべてが正常に動作します。クラッシュはデバイスがXcodeから切断された場合にのみ発生するため、デバッグは難しいです。私は、デバイスのログをチェックして、それがコアデータのクラッシュだように思える:
Incident Identifier: BDD70C46-6573-44A7-85AB-620E6FBA207F
CrashReporter Key: c04f591f9e0cc9d1991ce10e33ebcabd56affbe6
Hardware Model: iPhone8,4
Process: myApp [17746]
Path: /private/var/containers/Bundle/Application/878DB803-1DA5-46D7-8B50-655D43A5C28D/myApp.app/myApp
Identifier: com.example.myApp
Version: 2 (1.0.2)
Code Type: ARM-64 (Native)
Role: Foreground
Parent Process: launchd [1]
Coalition: com.example.myApp [16959]
Date/Time: 2017-09-19 14:34:57.1435 +0300
Launch Time: 2017-09-19 14:31:38.0853 +0300
OS Version: iPhone OS 10.3.3 (14G60)
Report Version: 104
Exception Type: EXC_CRASH (SIGKILL)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: Namespace <0xF>, Code 0x8badf00d
Triggered by Thread: 0
Filtered syslog:
None found
Thread 0 name: Dispatch queue: SQLQueue 0x100724310 for myApp.sqlite
Thread 0 Crashed:
0 libsqlite3.dylib 0x000000018f36d818 0x18f361000 + 51224
1 libsqlite3.dylib 0x000000018f36c9a4 0x18f361000 + 47524
2 libsqlite3.dylib 0x000000018f36c9a4 0x18f361000 + 47524
3 libsqlite3.dylib 0x000000018f36c2c4 0x18f361000 + 45764
4 libsqlite3.dylib 0x000000018f36bf24 0x18f361000 + 44836
5 CoreData 0x000000019113e0b0 -[NSSQLiteConnection prepareSQLStatement:] + 468
6 CoreData 0x000000019125f178 -[NSSQLiteConnection updateRow:forRequestContext:] + 492
7 CoreData 0x0000000191307f28 _writeChangesForSaveRequest + 1128
8 CoreData 0x0000000191309584 _executeSaveChangesRequest + 388
9 CoreData 0x00000001912ff5f0 -[NSSQLSaveChangesRequestContext executeRequestUsingConnection:] + 44
10 CoreData 0x00000001912170c4 __52-[NSSQLDefaultConnectionManager handleStoreRequest:]_block_invoke + 256
11 libdispatch.dylib 0x0000000100455a10 0x100454000 + 6672
12 libdispatch.dylib 0x00000001004625bc 0x100454000 + 58812
13 CoreData 0x0000000191216f64 -[NSSQLDefaultConnectionManager handleStoreRequest:] + 208
14 CoreData 0x00000001912d9824 -[NSSQLCoreDispatchManager routeStoreRequest:] + 272
15 CoreData 0x000000019124475c -[NSSQLCore dispatchRequest:withRetries:] + 236
16 CoreData 0x0000000191240578 -[NSSQLCore processSaveChanges:forContext:] + 200
17 CoreData 0x0000000191144f10 -[NSSQLCore executeRequest:withContext:error:] + 724
18 CoreData 0x000000019122384c __65-[NSPersistentStoreCoordinator executeRequest:withContext:error:]_block_invoke + 3492
19 CoreData 0x000000019121c0f0 -[NSPersistentStoreCoordinator _routeHeavyweightBlock:] + 276
20 CoreData 0x0000000191144adc -[NSPersistentStoreCoordinator executeRequest:withContext:error:] + 408
21 CoreData 0x000000019116597c -[NSManagedObjectContext save:] + 2548
22 myApp 0x00000001000cd0dc 0x1000c0000 + 53468
23 myApp 0x00000001000cbc24 0x1000c0000 + 48164
24 CoreLocation 0x00000001970ee828 0x1970de000 + 67624
25 CoreLocation 0x00000001970edfcc 0x1970de000 + 65484
26 CoreLocation 0x00000001970e11d8 0x1970de000 + 12760
27 CoreFoundation 0x000000018ee1930c __CFRUNLOOP_IS_CALLING_OUT_TO_A_BLOCK__ + 20
28 CoreFoundation 0x000000018ee18b28 __CFRunLoopDoBlocks + 288
29 CoreFoundation 0x000000018ee16e1c __CFRunLoopRun + 1884
30 CoreFoundation 0x000000018ed46da4 CFRunLoopRunSpecific + 424
31 GraphicsServices 0x00000001907b1074 GSEventRunModal + 100
32 UIKit 0x0000000195001c9c UIApplicationMain + 208
33 myApp 0x00000001000e4574 0x1000c0000 + 148852
34 libdyld.dylib 0x000000018dd5559c start + 4
Thread 1 name: Dispatch queue: BKSProcessAssertionClient
Thread 1:
0 libsystem_kernel.dylib 0x000000018de47224 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x000000018de4709c mach_msg + 72
2 libdispatch.dylib 0x000000010046d37c 0x100454000 + 103292
3 libdispatch.dylib 0x000000010046d780 0x100454000 + 104320
4 libxpc.dylib 0x000000018df60edc xpc_connection_send_message_with_reply_sync + 196
5 BaseBoard 0x000000019095a944 -[BSXPCMessage sendSynchronouslyToConnection:error:] + 76
6 BaseBoard 0x0000000190957148 -[BSBaseXPCClient _sendMessage:withReplyHandler:waitForReply:waitDuration:] + 436
7 AssertionServices 0x00000001909a17c4 -[BKSProcessAssertionClient _assertionQueue_sendEvent:forMessageType:responseHandler:] + 136
8 AssertionServices 0x00000001909a0f78 -[BKSProcessAssertionClient sendCreateAssertion:] + 108
9 AssertionServices 0x00000001909a0968 -[BKSProcessAssertion _clientQueue_acquireAssertion] + 312
10 libdispatch.dylib 0x0000000100455a50 0x100454000 + 6736
11 libdispatch.dylib 0x0000000100455a10 0x100454000 + 6672
12 libdispatch.dylib 0x00000001004632e8 0x100454000 + 62184
13 libdispatch.dylib 0x0000000100459634 0x100454000 + 22068
14 libdispatch.dylib 0x0000000100465630 0x100454000 + 71216
15 libdispatch.dylib 0x000000010046539c 0x100454000 + 70556
16 libsystem_pthread.dylib 0x000000018df2b100 _pthread_wqthread + 1096
17 libsystem_pthread.dylib 0x000000018df2acac start_wqthread + 4
Thread 2 name: Dispatch queue: com.apple.CoreLocation.ConnectionClient.0x17013b6c0.events
Thread 2:
0 libsystem_kernel.dylib 0x000000018de47278 semaphore_timedwait_trap + 8
1 libdispatch.dylib 0x000000010047f238 0x100454000 + 176696
2 libdispatch.dylib 0x0000000100467db8 0x100454000 + 81336
3 CoreLocation 0x00000001970e1078 0x1970de000 + 12408
4 CoreLocation 0x00000001970e6118 0x1970de000 + 33048
5 CoreLocation 0x00000001970e5f18 0x1970de000 + 32536
6 CoreLocation 0x0000000197131e88 0x1970de000 + 343688
7 CoreLocation 0x000000019712e4f0 0x1970de000 + 328944
8 CoreLocation 0x000000019712e414 0x1970de000 + 328724
9 CoreLocation 0x000000019712fa80 0x1970de000 + 334464
10 libxpc.dylib 0x000000018df5f84c _xpc_connection_call_event_handler + 68
11 libxpc.dylib 0x000000018df5d358 _xpc_connection_mach_event + 1448
12 libdispatch.dylib 0x0000000100455ae0 0x100454000 + 6880
13 libdispatch.dylib 0x00000001004599d8 0x100454000 + 23000
14 libdispatch.dylib 0x0000000100463128 0x100454000 + 61736
15 libdispatch.dylib 0x0000000100458da0 0x100454000 + 19872
16 libdispatch.dylib 0x0000000100463128 0x100454000 + 61736
17 libdispatch.dylib 0x0000000100459634 0x100454000 + 22068
18 libdispatch.dylib 0x0000000100463128 0x100454000 + 61736
19 libdispatch.dylib 0x0000000100459634 0x100454000 + 22068
20 libdispatch.dylib 0x0000000100464358 0x100454000 + 66392
21 libdispatch.dylib 0x000000010046c57c 0x100454000 + 99708
22 libsystem_pthread.dylib 0x000000018df2afbc _pthread_wqthread + 772
23 libsystem_pthread.dylib 0x000000018df2acac start_wqthread + 4
Thread 3 name: com.apple.uikit.eventfetch-thread
Thread 3:
0 libsystem_kernel.dylib 0x000000018de47224 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x000000018de4709c mach_msg + 72
2 CoreFoundation 0x000000018ee18e90 __CFRunLoopServiceMachPort + 192
3 CoreFoundation 0x000000018ee16ae4 __CFRunLoopRun + 1060
4 CoreFoundation 0x000000018ed46da4 CFRunLoopRunSpecific + 424
5 Foundation 0x000000018f861db4 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
6 Foundation 0x000000018f882b84 -[NSRunLoop(NSRunLoop) runUntilDate:] + 96
7 UIKit 0x000000019598b830 -[UIEventFetcher threadMain] + 136
8 Foundation 0x000000018f95f318 __NSThread__start__ + 996
9 libsystem_pthread.dylib 0x000000018df2d68c _pthread_body + 240
10 libsystem_pthread.dylib 0x000000018df2d59c _pthread_body + 0
11 libsystem_pthread.dylib 0x000000018df2acb4 thread_start + 4
Thread 4:
0 libsystem_pthread.dylib 0x000000018df2aca8 start_wqthread + 0
Thread 5 name: com.apple.NSURLConnectionLoader
Thread 5:
0 libsystem_kernel.dylib 0x000000018de47224 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x000000018de4709c mach_msg + 72
2 CoreFoundation 0x000000018ee18e90 __CFRunLoopServiceMachPort + 192
3 CoreFoundation 0x000000018ee16ae4 __CFRunLoopRun + 1060
4 CoreFoundation 0x000000018ed46da4 CFRunLoopRunSpecific + 424
5 CFNetwork 0x000000018f553df4 +[NSURLConnection(Loader) _resourceLoadLoop:] + 404
6 Foundation 0x000000018f95f318 __NSThread__start__ + 996
7 libsystem_pthread.dylib 0x000000018df2d68c _pthread_body + 240
8 libsystem_pthread.dylib 0x000000018df2d59c _pthread_body + 0
9 libsystem_pthread.dylib 0x000000018df2acb4 thread_start + 4
Thread 6 name: GAIThread
Thread 6:
0 libsystem_kernel.dylib 0x000000018de47224 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x000000018de4709c mach_msg + 72
2 CoreFoundation 0x000000018ee18e90 __CFRunLoopServiceMachPort + 192
3 CoreFoundation 0x000000018ee16ae4 __CFRunLoopRun + 1060
4 CoreFoundation 0x000000018ed46da4 CFRunLoopRunSpecific + 424
5 Foundation 0x000000018f861db4 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
6 Foundation 0x000000018f8b6704 -[NSRunLoop(NSRunLoop) run] + 88
7 myApp 0x0000000100120398 0x1000c0000 + 394136
8 Foundation 0x000000018f95f318 __NSThread__start__ + 996
9 libsystem_pthread.dylib 0x000000018df2d68c _pthread_body + 240
10 libsystem_pthread.dylib 0x000000018df2d59c _pthread_body + 0
11 libsystem_pthread.dylib 0x000000018df2acb4 thread_start + 4
Thread 7:
0 libsystem_pthread.dylib 0x000000018df2aca8 start_wqthread + 0
Thread 8:
0 libsystem_pthread.dylib 0x000000018df2aca8 start_wqthread + 0
しかし、クラッシュレポートがどのように見えるの主要な例では:
Incident Identifier: D5D6C3C6-7EB7-4E2C-901C-7203943BD722
CrashReporter Key: c04f591f9e0cc9d1991ce10e33ebcabd56affbe6
Hardware Model: iPhone8,4
Process: myApp [17444]
Path: /private/var/containers/Bundle/Application/93AB2A15-0C65-47D5-BE24-FB298DC396E0/myApp.app/myApp
Identifier: com.example.myApp
Version: 2 (1.0.2)
Code Type: ARM-64 (Native)
Role: Foreground
Parent Process: launchd [1]
Coalition: com.example.myApp [16449]
Date/Time: 2017-09-19 12:41:45.3051 +0300
Launch Time: 2017-09-19 12:24:22.7861 +0300
OS Version: iPhone OS 10.3.3 (14G60)
Report Version: 104
Exception Type: EXC_CRASH (SIGKILL)
Exception Codes: 0x0000000000000000, 0x0000000000000000
Exception Note: EXC_CORPSE_NOTIFY
Termination Reason: Namespace <0xF>, Code 0x8badf00d
Triggered by Thread: 0
Filtered syslog:
None found
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libsystem_kernel.dylib 0x000000018de47224 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x000000018de4709c mach_msg + 72
2 CoreFoundation 0x000000018ee18e90 __CFRunLoopServiceMachPort + 192
3 CoreFoundation 0x000000018ee16ae4 __CFRunLoopRun + 1060
4 CoreFoundation 0x000000018ed46da4 CFRunLoopRunSpecific + 424
5 GraphicsServices 0x00000001907b1074 GSEventRunModal + 100
6 UIKit 0x0000000195001c9c UIApplicationMain + 208
7 myApp 0x0000000100031bb8 0x10000c000 + 154552
8 libdyld.dylib 0x000000018dd5559c start + 4
Thread 1 name: com.apple.uikit.eventfetch-thread
Thread 1:
0 libsystem_kernel.dylib 0x000000018de47224 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x000000018de4709c mach_msg + 72
2 CoreFoundation 0x000000018ee18e90 __CFRunLoopServiceMachPort + 192
3 CoreFoundation 0x000000018ee16ae4 __CFRunLoopRun + 1060
4 CoreFoundation 0x000000018ed46da4 CFRunLoopRunSpecific + 424
5 Foundation 0x000000018f861db4 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
6 Foundation 0x000000018f882b84 -[NSRunLoop(NSRunLoop) runUntilDate:] + 96
7 UIKit 0x000000019598b830 -[UIEventFetcher threadMain] + 136
8 Foundation 0x000000018f95f318 __NSThread__start__ + 996
9 libsystem_pthread.dylib 0x000000018df2d68c _pthread_body + 240
10 libsystem_pthread.dylib 0x000000018df2d59c _pthread_body + 0
11 libsystem_pthread.dylib 0x000000018df2acb4 thread_start + 4
Thread 2 name: com.twitter.crashlytics.ios.MachExceptionServer
Thread 2:
0 libsystem_kernel.dylib 0x000000018de47224 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x000000018de4709c mach_msg + 72
2 myApp 0x000000010008d6a0 0x10000c000 + 530080
3 libsystem_pthread.dylib 0x000000018df2d68c _pthread_body + 240
4 libsystem_pthread.dylib 0x000000018df2d59c _pthread_body + 0
5 libsystem_pthread.dylib 0x000000018df2acb4 thread_start + 4
Thread 3 name: com.apple.NSURLConnectionLoader
Thread 3:
0 libsystem_kernel.dylib 0x000000018de47224 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x000000018de4709c mach_msg + 72
2 CoreFoundation 0x000000018ee18e90 __CFRunLoopServiceMachPort + 192
3 CoreFoundation 0x000000018ee16ae4 __CFRunLoopRun + 1060
4 CoreFoundation 0x000000018ed46da4 CFRunLoopRunSpecific + 424
5 CFNetwork 0x000000018f553df4 +[NSURLConnection(Loader) _resourceLoadLoop:] + 404
6 Foundation 0x000000018f95f318 __NSThread__start__ + 996
7 libsystem_pthread.dylib 0x000000018df2d68c _pthread_body + 240
8 libsystem_pthread.dylib 0x000000018df2d59c _pthread_body + 0
9 libsystem_pthread.dylib 0x000000018df2acb4 thread_start + 4
Thread 4 name: GAIThread
Thread 4:
0 libsystem_kernel.dylib 0x000000018de47224 mach_msg_trap + 8
1 libsystem_kernel.dylib 0x000000018de4709c mach_msg + 72
2 CoreFoundation 0x000000018ee18e90 __CFRunLoopServiceMachPort + 192
3 CoreFoundation 0x000000018ee16ae4 __CFRunLoopRun + 1060
4 CoreFoundation 0x000000018ed46da4 CFRunLoopRunSpecific + 424
5 Foundation 0x000000018f861db4 -[NSRunLoop(NSRunLoop) runMode:beforeDate:] + 304
6 Foundation 0x000000018f8b6704 -[NSRunLoop(NSRunLoop) run] + 88
7 myApp 0x000000010006d9dc 0x10000c000 + 399836
8 Foundation 0x000000018f95f318 __NSThread__start__ + 996
9 libsystem_pthread.dylib 0x000000018df2d68c _pthread_body + 240
10 libsystem_pthread.dylib 0x000000018df2d59c _pthread_body + 0
11 libsystem_pthread.dylib 0x000000018df2acb4 thread_start + 4
Thread 5:
0 libsystem_pthread.dylib 0x000000018df2aca8 start_wqthread + 0
Thread 6:
0 libsystem_pthread.dylib 0x000000018df2aca8 start_wqthread + 0
Thread 7:
0 libsystem_pthread.dylib 0x000000018df2aca8 start_wqthread + 0
Thread 8:
0 libsystem_pthread.dylib 0x000000018df2aca8 start_wqthread + 0
Thread 9:
0 libsystem_pthread.dylib 0x000000018df2aca8 start_wqthread + 0
たぶん誰かが同様の問題を持っていたし、いくつかの提案がありますか?
Role: Foreground
だから、それは混乱だ:奇妙
「受信メモリ警告」がありますか? –
アプリが実行されていてxcodeに接続されているときにメモリの警告はありませんが、アプリが接続せずに実行されたときに起こっていることをデバッグできません。 –
メモリの警告をシミュレートできますか?それを行うには:あなたのシミュレータのデバッグメニューに行き、 "メモリの警告をシミュレートする"をクリックしてください –