2015-10-07 21 views
5

Tôi đã có một người dùng đang chạy ứng dụng của mình trên iPhone 5. Anh ấy đã thực hiện sao lưu bằng iTunes. Mua một chiếc iPhone 6S mới và khôi phục từ bản sao lưu iTunes của mình.Không thể xác định lý do cho sự cố từ nhật ký sự cố Xcode

Khi anh ấy khởi chạy ứng dụng của tôi, nó ngay lập tức bị treo trong khi khởi chạy. Tôi đã nhận được các bản ghi sự cố từ anh ta, nhưng không có thông báo lỗi. Nó đang gặp sự cố trong chức năng tự động tạo-ứng dụngDocumentsDirectory trong AppDelegate của tôi.

- (NSURL *)applicationDocumentsDirectory 
{ 
    return [[[NSFileManager defaultManager] URLsForDirectory:NSDocumentDirectory inDomains:NSUserDomainMask] lastObject]; 
} 

Có cách nào để tôi xác định điều gì đã xảy ra không đúng để xem đó có phải là điều tôi có thể khắc phục không?

Incident Identifier: 3A0D56CA-EEAF-4F5A-8D16-D182E61034D5 
CrashReporter Key: 9f4ce42b70e98d925f135c618394817f9451767b 
Hardware Model:  iPhone8,1 
Process:    MyApp [1198] 
Path:    /private/var/mobile/Containers/Bundle/Application/XXXXXXXX-XXXX-XXXX-XXXX-XXXXXXXXXX/MyApp.app/MyApp 
Identifier:   com.inadaydevelopment.myapp 
Version:    1.0.1 (1.0) 
Code Type:   ARM-64 (Native) 
Parent Process:  launchd [1] 

Date/Time:   2015-10-02 14:30:25.25 -0700 
Launch Time:   2015-10-02 14:30:25.25 -0700 
OS Version:   iOS 9.0.1 (13A405) 
Report Version:  105 

Exception Type: EXC_CRASH (SIGABRT) 
Exception Codes: 0x0000000000000000, 0x0000000000000000 
Exception Note: EXC_CORPSE_NOTIFY 
Triggered by Thread: 0 

Filtered syslog: 
None found 

Thread 0 name: Dispatch queue: com.apple.main-thread 
Thread 0 Crashed: 
0 libsystem_kernel.dylib   0x000000019950b1e0 __pthread_kill + 8 
1 libsystem_pthread.dylib   0x00000001995d4f0c pthread_kill + 112 
2 libsystem_c.dylib    0x000000019947eb78 abort + 140 
3 MyApp       0x000000010001ef7c -[AppDelegate applicationDocumentsDirectory] (AppDelegate.m:517) 
4 MyApp       0x000000010001eae8 -[AppDelegate managedObjectContext] (AppDelegate.m:430) 
5 MyApp       0x000000010002d004 -[BaseViewController awakeFromNib] (BaseViewController.m:54) 
6 UIKit       0x00000001890e6058 -[UINib instantiateWithOwner:options:] + 2188 
7 UIKit       0x0000000189324ea0 -[UIStoryboard instantiateViewControllerWithIdentifier:] + 196 
8 UIKit       0x0000000189325000 -[UIStoryboard instantiateInitialViewController] + 68 
9 UIKit       0x0000000188edd178 -[UIApplication _loadMainStoryboardFileNamed:bundle:] + 108 
10 UIKit       0x0000000188caee40 -[UIApplication _loadMainInterfaceFile] + 264 
11 UIKit       0x0000000188edc068 -[UIApplication _runWithMainScene:transitionContext:completion:] + 1316 
12 UIKit       0x0000000188ed9300 -[UIApplication workspaceDidEndTransaction:] + 168 
13 FrontBoardServices    0x000000018d7737ec -[FBSSerialQueue _performNext] + 184 
14 FrontBoardServices    0x000000018d773b6c -[FBSSerialQueue _performNextFromRunLoopSource] + 56 
15 CoreFoundation     0x000000018369c5a4 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE0_PERFORM_FUNCTION__ + 24 
16 CoreFoundation     0x000000018369c038 __CFRunLoopDoSources0 + 540 
17 CoreFoundation     0x0000000183699d38 __CFRunLoopRun + 724 
18 CoreFoundation     0x00000001835c8dc0 CFRunLoopRunSpecific + 384 
19 UIKit       0x0000000188ca80c8 -[UIApplication _run] + 460 
20 UIKit       0x0000000188ca2f60 UIApplicationMain + 204 
21 MyApp       0x000000010001bdd0 main (main.m:16) 
22 libdyld.dylib     0x00000001993ee8b8 start + 4 
+0

có vẻ như ứng dụng đang tìm kiếm một số tệp trong thư mục tài liệu và rất tiếc là chúng không nằm trong thư mục tài liệu ứng dụng !!!! –

+1

Nó thực sự chỉ tìm kiếm các thư mục tài liệu riêng của mình, nhưng nếu những thư mục không có ở đó nó chỉ cần trả về nil và hoạt động trên nil không bao giờ phải sụp đổ. –

+0

Bạn có thể tái tạo điều này trong trình mô phỏng 6S không? – chedabob

Trả lời

0

Sự cố không có bất kỳ ngăn xếp hữu ích nào thường xảy ra khi thư được gửi đến một phiên bản được phân phối. Tôi đã vật lộn với điều này một vài tuần trước khi rối tung xung quanh với một thể loại UIViewController.

Tất nhiên, bạn nói đúng, một tin nhắn được gửi tới nil không gây hại gì. Một tin nhắn được gửi tới một trường hợp sth được phân phối trên mặt khác dẫn đến sự cố.
Thử bật ZombieObjects, sau đó bạn sẽ nhận được nhật ký khi điều này xảy ra, điều này có thể giúp bạn tìm lỗi.

+0

Đây không phải là điều tôi có thể tái tạo. Nó xảy ra trong tự nhiên và không phải là một tình huống mà tôi có thể xây dựng lại nhị phân và thử lại. –

+0

Thật không may. Tuy nhiên, để thử nghiệm trong tương lai (trừ khi bạn muốn xem việc sử dụng bộ nhớ trong thời gian thực), nó không làm tổn thương để kích hoạt ZombieObjects. Ngoài ra, Công cụ có thể giúp đỡ trong những tình huống như vậy. Ngoài ra, hãy để mắt mở cho một đại biểu vô tình là một ref mạnh mẽ chẳng hạn. Chúc may mắn :) –

Các vấn đề liên quan