2012-10-19 31 views
6

Tôi gặp sự cố lạ với phiên bản mới nhất của mình trên App store. Một số người dùng báo cáo rằng ứng dụng gặp sự cố khi khởi động sau khi nâng cấp ứng dụng và ứng dụng chỉ xảy ra với iOS6. Tuy nhiên, sự cố sẽ không xảy ra nếu người dùng xóa ứng dụng và cài đặt mới.Lỗi ứng dụng khi khởi động chỉ với bản cập nhật mới không cài đặt

Tôi kiểm tra nhật ký sự cố trên điện thoại và xem lỗi này.

OS Version:  iOS 6.0 (10A403) 

Exception Type: EXC_BAD_ACCESS (SIGBUS) 
Exception Codes: EXC_ARM_DA_ALIGN at 0x2fe6f785 
Crashed Thread: 0 

Thread 0 name: Dispatch queue: com.apple.main-thread 
Thread 0 Crashed: 
0 My App       0x00074ace +[aClass sharedNormalImages] (aClass.m:34) 
1 dyld       0x2fe79628 ImageLoaderMachO::doInitialization(ImageLoader::LinkContext const&) + 16 
2 dyld       0x2fe76a3a ImageLoader::recursiveInitialization(ImageLoader::LinkContext const&, unsigned int, ImageLoader::InitializerTimingList&) + 382 
3 dyld       0x2fe76874 ImageLoader::runInitializers(ImageLoader::LinkContext const&, ImageLoader::InitializerTimingList&) + 36 
4 dyld       0x2fe6dd04 dyld::initializeMainExecutable() + 172 
5 dyld       0x2fe7085c dyld::_main(macho_header const*, unsigned long, int, char const**, char const**, char const**, unsigned long*) + 1804 
6 dyld       0x2fe6d32c dyldbootstrap::start(macho_header const*, int, char const**, long, macho_header const*, unsigned long*) + 604 
7 dyld       0x2fe6d064 _dyld_start + 60 

Chức năng chia sẻNormalImages chưa được thay đổi so với phiên bản gần đây và nó chỉ là một hàm trả về mảng như thế này.

static NSArray *normalImages = nil; 
+ (NSArray *)sharedNormalImages 
{ 
    if (normalImages == nil) { 
      normalImages = @[@"xx.png", @"xy.png", @"yx.png", @"yy.png"]; 
    } 

    return normalImages; 
} 

Tôi thực sự không biết điều gì xảy ra. Tôi đã cố gắng cài đặt với phiên bản cũ và sau đó thay thế bằng phiên bản mới bằng Xcode. Vấn đề cũng không xảy ra. Vì vậy, tôi không thể sao chép nó với môi trường của tôi cả. Điều đó thật kỳ lạ.

Sửa

Không chắc thế nào nó có thể liên quan nhưng tôi thấy thông báo lỗi này trên thiết bị console.

Oct 19 12:36:16 iPhone My App[210] <Error>: objc[210]: Class is implemented in both /var/mobile/Applications/A5EC61E7-7DBA-4FA5-A5FE-6D49EAFAD6EB/My App.app/My App and /var/mobile/Applications/A5EC61E7-7DBA-4FA5-A5FE-6D49EAFAD6EB/My App.app/My App. One of the two will be used. Which one is undefined. 
Oct 19 12:36:16 iPhone kernel[0] <Debug>: launchd[210] Builtin profile: container (sandbox) 
Oct 19 12:36:16 iPhone kernel[0] <Debug>: launchd[210] Container: /private/var/mobile/Applications/A5EC61E7-7DBA-4FA5-A5FE-6D49EAFAD6EB (sandbox) 
Oct 19 12:36:16 iPhone ReportCrash[211] <Notice>: Formulating crash report for process My App[210] 
Oct 19 12:36:16 iPhone com.apple.launchd[1] (UIKitApplication:com.acompany.myapp[0x813f][210]) <Warning>: (UIKitApplication:com.acompany.myapp[0x813f]) Job appears to have crashed: Bus error: 10 
Oct 19 12:36:16 iPhone com.apple.launchd[1] (UIKitApplication:com.acompany.myapp[0x813f]) <Notice>: (UIKitApplication:com.acompany.myapp[0x813f]) Throttling respawn: Will start in 2147483647 seconds 
Oct 19 12:36:16 iPhone backboardd[52] <Warning>: Application 'UIKitApplication:com.acompany.myapp[0x813f]' exited abnormally with signal 10: Bus error: 10 
Oct 19 12:36:16 iPhone ReportCrash[211] <Error>: libMobileGestalt copySystemVersionDictionaryValue: Could not lookup ReleaseType from system version dictionary 
Oct 19 12:36:16 iPhone ReportCrash[211] <Notice>: Saved crashreport to /var/mobile/Library/Logs/CrashReporter/My App_2012-10-19-123616_iPhone.plist using uid: 0 gid: 0, synthetic_euid: 501 egid: 0 

FYI, tôi cập nhật biểu tượng ứng dụng được "hiển thị trước" trên bản cập nhật mới nhất nhưng tôi không nghĩ điều đó có thể gây ra sự cố.

+0

Bạn đã thử normalImages = [arrayWithObjects NSArray: @ "xx.png", @ "xy.png", @ "yx.png", @" yy.png ", nil]; ? – kamleshwar

+0

Hiện tại, sự cố không thể tái tạo bằng máy của tôi. Dù sao, nếu đây thực sự là vấn đề, tại sao nó chỉ xảy ra với iOS6 chứ không phải iOS5? – panchapol

+0

Xin chào Bạn có bất kỳ thay đổi nào trong Coredata, trong ứng dụng của bạn không? –

Trả lời

1

Để tái tạo vấn đề này, hãy thử các bước sau:

  1. xây dựng cả hai phiên bản sử dụng cấu hình Ad-Hoc Provisioning,
  2. cài đặt phiên bản cũ sử dụng iTunes.
  3. mở ứng dụng trên thiết bị và xem tất cả các chế độ xem.
  4. cập nhật với phiên bản mới của ứng dụng sử dụng iTunes và chạy
+0

Tôi xin lỗi nhưng tôi quên đặt một dòng trên cùng. 'static NSArray * normalImages = nil;' – panchapol

+0

Tôi đã thấy một số điều kỳ lạ với một số cách mới để xác định mảng liên tục, nhưng tôi nghĩ rằng @ShineethHamza có thể là một thứ gì đó.Trong khi hai dòng mã có thể là khái niệm giống nhau, chúng có nghĩa là những thứ khác nhau đối với trình biên dịch và có thể gây ra vấn đề. Nó không phải về truy cập, tôi nghĩ đó là cách nó được tạo ra, lưu trữ và tham chiếu. Nó thậm chí có thể là một lỗi. Tôi sẽ thử nó nếu bạn chưa có. –

+0

@ThuggishNuggets tôi đã viết câu trả lời đó trước khi anh ta thêm 'static NSArray * normalImages = nil;' vào câu hỏi. Xin lỗi về điều đó, xin lỗi tôi. tôi đã chỉnh sửa câu trả lời. cảm ơn bro. –

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