2012-10-19 1 views
6

Ich habe ein seltsames Problem mit meiner neuesten Version im App Store. Einige Benutzer berichten, dass die App beim Start nach dem Upgrade der App abstürzt und dies nur bei iOS6 passiert. Der Absturz tritt jedoch nicht auf, wenn der Benutzer die App löscht und eine neue Installation ausführt.App beim Start mit nur Update nicht neu zu installieren

Ich überprüfe das Unfallprotokoll auf dem Telefon und sehe diesen Fehler.

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 

Die sharedNormalImages Funktion wird nicht überhaupt aus der letzten Version geändert und es ist nur eine Funktion, die ein Array wie folgt zurück.

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

    return normalImages; 
} 

Ich habe wirklich keine Ahnung, was passiert. Ich habe versucht, mit der alten Version zu installieren und dann mit der neuen Version durch Xcode zu ersetzen. Das Problem tritt auch nicht auf. Also kann ich es mit meiner Umgebung überhaupt nicht replizieren. Das ist so seltsam.

bearbeiten

nicht sicher, wie es in Beziehung gesetzt werden könnte, aber ich diese Fehlermeldung Konsole auf dem Gerät zu sehen.

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, aktualisiere ich das App-Symbol „prerendered“ auf dem neuesten Update zu sein, aber ich glaube nicht, dass die zum Absturz bringen könnte.

+0

haben Sie versucht normalImages = [NSArray arraywithobjects: @ "xx.png" @ "xy.png" @ "yx.png" @“ yy.png ", nil]; ? – kamleshwar

+0

Das Problem ist, kann es jetzt nicht mit meiner Maschine reproduzieren. Wie auch immer, wenn das wirklich das Problem ist, warum passiert es nur mit iOS6 nicht iOS5? – panchapol

+0

Hallo Hast du Änderungen an Coredata in deiner App? –

Antwort

1

Um das Problem zu replizieren, versuchen Sie folgende Schritte:

  1. bauen beide Versionen Ad-Hoc Provisioning-Profil verwenden,
  2. ältere Version iTunes installieren.
  3. Öffnen Sie die App auf dem Gerät und gehen Sie durch alle Ansichten.
  4. Update mit der neuen Version von App mit iTunes und führen
+0

Es tut mir leid, aber ich habe vergessen, eine Zeile oben zu legen. 'static NSArray * normalImages = nil;' – panchapol

+0

Ich habe einige Verrücktheiten mit einigen der neuen Möglichkeiten gesehen, konstante Arrays zu definieren, aber ich denke, dass @ShineethHamza etwas angeht.Obwohl die beiden Codezeilen konzeptionell identisch sein können, meinen sie unterschiedliche Dinge für den Compiler und können das Problem verursachen. Es geht nicht um den Zugriff, ich denke, es geht darum, wie es erstellt, gespeichert und referenziert wird. Es könnte sogar ein Fehler sein. Ich würde es versuchen, wenn du es noch nicht getan hast. –

+0

@ThuggishNuggets Ich habe diese Antwort geschrieben, bevor er 'static NSArray * normalImages = nil;' zu der Frage hinzugefügt hat. Entschuldigung, Entschuldigung. Ich habe die Antwort bearbeitet. Danke, Bruder. –