2012-10-19 19 views
6

Mam dziwny problem z moją najnowszą wersją w App Store. Niektórzy użytkownicy zgłaszają awarię aplikacji po uruchomieniu aplikacji i dzieje się tak tylko w przypadku iOS6. Jednak awaria nie nastąpi, jeśli użytkownik usunie aplikację i będzie mieć nową instalację.Awaria aplikacji przy starcie z tylko aktualizacją nie świeżą instalacją

Sprawdzam dziennik awarii w telefonie i widzę ten błąd.

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 

Funkcja sharedNormalImages nie została zmieniona w ogóle z najnowszej wersji i jest to tylko funkcja, która zwraca tablicę takiego.

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

    return normalImages; 
} 

Naprawdę nie mam pojęcia, co się stanie. Próbowałem zainstalować starą wersję, a następnie zastąpić ją nową wersją z Xcode. Problem również nie występuje. Dlatego nie mogę w ogóle powielić tego środowiska. To takie dziwne.

Edit

Nie wiem, jak to może być związane, ale widzę ten komunikat o błędzie na konsoli urządzenia.

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, zaktualizować ikona app być „wstępnie wyrenderowana” na najnowszej aktualizacji, ale nie sądzę, że mógłby zrobić katastrofę.

+0

próbowałeś normalImages = [arrayWithObjects NSArray: @ "xx.png" @ "xy.png" @ "yx.png" @” yy.png ", nil]; ? – kamleshwar

+0

Problem jest niemożliwy do odtworzenia w moim komputerze. W każdym razie, jeśli to naprawdę jest problem, dlaczego dzieje się tylko z iOS6, a nie z iOS5? – panchapol

+0

Witam Czy w swojej aplikacji masz jakieś zmiany w wersji Coredata? –

Odpowiedz

1

replikować problemu, spróbuj wykonać następujące czynności:

  1. budować zarówno wersje wykorzystujące profil Ad-Hoc administracyjnej,
  2. zainstalować starszą wersję za pomocą programu iTunes.
  3. otwórz aplikację na urządzeniu i przeglądaj wszystkie widoki.
  4. aktualizacja z nowej wersji aplikacji przy użyciu programu iTunes i uruchom
+0

Przykro mi, ale zapomniałem umieścić na górze linię. 'static NSArray * normalImages = nil;' – panchapol

+0

Widziałem trochę dziwności z niektórymi z nowych sposobów definiowania stałych tablic, ale myślę, że @ShineethHamza może być na czymś.O ile dwie linie kodu mogą być koncepcyjnie takie same, oznaczają różne rzeczy dla kompilatora i mogą być przyczyną problemu. Nie chodzi o dostęp, myślę, że chodzi o to, jak jest on tworzony, przechowywany i przywoływany. Może to być nawet błąd. Spróbuję, jeśli jeszcze tego nie zrobiłeś. –

+0

@ThuggishNuggets Napisałem tę odpowiedź, zanim dodał on do pytania "static NSArray * normalImages = zero". Przepraszam za to, moje przeprosiny. zredagowałem odpowiedź. dziękuję bro. –

Powiązane problemy