terminare chiamato dopo aver lanciato un'istanza di "nsexception" (GDB)
-
28-10-2019 - |
Domanda
Ho realizzato un'app con 6 mesi di lavoro senza backup. Funziona bene su simulatore ma sul dispositivo si blocca.
Questo è il codice di errore:
2011-09-11 17: 55: 49.172 APLI [223: 707 * App terminata a causa dell'eccezione non insaccata "nsinnalinconsistencyexception", motivo: "Impossibile caricare pennino in bambola:" nsbundle /var/mobile/applications/fc234696-314b-4328-94bf-a73506b8ab07/apli.app> (caricato) con nome 'con nome' Finestra principale''
*** Call stack at first throw:
(
0 CoreFoundation 0x3438664f __exceptionPreprocess + 114
1 libobjc.A.dylib 0x36879c5d objc_exception_throw + 24
2 CoreFoundation 0x34386491 +[NSException raise:format:arguments:] + 68
3 CoreFoundation 0x343864cb +[NSException raise:format:] + 34
4 UIKit 0x34b03a53 -[UINib instantiateWithOwner:options:] + 1110
5 UIKit 0x34b04e09 -[NSBundle(UINSBundleAdditions) loadNibNamed:owner:options:] + 92
6 UIKit 0x3492f4cd -[UIApplication _loadMainNibFile] + 96
7 UIKit 0x34929b09 -[UIApplication _runWithURL:payload:launchOrientation:statusBarStyle:statusBarHidden:] + 180
8 UIKit 0x348fe7d7 -[UIApplication handleEvent:withNewEvent:] + 1114
9 UIKit 0x348fe215 -[UIApplication sendEvent:] + 44
10 UIKit 0x348fdc53 _UIApplicationHandleEvent + 5090
11 GraphicsServices 0x33a56e77 PurpleEventCallback + 666
12 CoreFoundation 0x3435da97 __CFRUNLOOP_IS_CALLING_OUT_TO_A_SOURCE1_PERFORM_FUNCTION__ + 26
13 CoreFoundation 0x3435f83f __CFRunLoopDoSource1 + 166
14 CoreFoundation 0x3436060d __CFRunLoopRun + 520
15 CoreFoundation 0x342f0ec3 CFRunLoopRunSpecific + 230
16 CoreFoundation 0x342f0dcb CFRunLoopRunInMode + 58
17 UIKit 0x34928d49 -[UIApplication _run] + 372
18 UIKit 0x34926807 UIApplicationMain + 670
19 Apli 0x00002bb3 main + 82
20 Apli 0x00002b5c start + 40
)
terminate called after throwing an instance of 'NSException'
(gdb)
Soluzione
Controlla che il tuo file mainwindow.xib sia ancora nel tuo progetto e in particolare è verificato per essere incluso nel tuo obiettivo.
Immagino che il tuo mainwindow.xib non sia verificato per essere incluso nel tuo pacchetto Apli.App finale, ciò spiega perché non si trova nel tuo pacchetto.
Se non hai "pulito" le tue precedenti build della tua app, una versione precedente del tuo pacchetto di app compilato, incluso il file mainwindow.xib, potrebbe essere ancora presente nel tuo simulatore, spiegando perché il simulatore lo trova ancora. (Se "pulisci tutti gli obiettivi" dal menu "build", quindi ricostruisci la tua app sul simulatore, scommetto che il simulatore non troverà nemmeno il tuo file xib)