KERN_INVALID_ADDRESS bei 0x0000000000000000
Habe ich entwickelt eine iPad-Applikation mit Xcode 6.3.2.
Ich habe meine Bewerbung eingereicht, um den App Store zu überprüfen, wo es war abzulehnen, wegen Absturz.Im folgenden ist der Absturzbericht von iTunes.
Incident Identifier: 88DD7F94-3382-4241-A0D7-C3E7F6D20737
CrashReporter Key: 9881ae0cc3b3fbfccfd0ce1496d2fa08fec08782
Hardware Model: xxx
Path: /private/var/mobile/Containers/Bundle/Application/FDBBD67F-0EF7-43FB-80CB-8308A10A2D29/Vehicle Visuals.app/Vehicle Visuals
Identifier: com.vehiclevisuals.Vehicle-Visuals
Version: 2.0.0 (1.1.0)
Code Type: ARM-64 (Native)
Parent Process: launchd [1]
Date/Time: 2015-06-12 12:33:57.988 -0700
Launch Time: 2015-06-12 12:22:14.581 -0700
OS Version: iOS 8.3 (12F69)
Report Version: 105
Exception Type: EXC_BAD_ACCESS (SIGSEGV)
Exception Subtype: KERN_INVALID_ADDRESS at 0x0000000000000000
Triggered by Thread: 0
Thread 0 name: Dispatch queue: com.apple.main-thread
Thread 0 Crashed:
0 libobjc.A.dylib 0x0000000195da7bdc 0x195d8c000 + 113628
1 QuartzCore 0x00000001889fdc2c 0x1889ec000 + 72748
2 Vehicle Visuals 0x0000000100126828 0x1000ec000 + 239656
3 Vehicle Visuals 0x0000000100101e80 0x1000ec000 + 89728
4 UIKit 0x0000000189118778 0x1890a4000 + 477048
5 UIKit 0x0000000189116750 0x1890a4000 + 468816
6 UIKit 0x0000000189112000 0x1890a4000 + 450560
7 UIKit 0x00000001890b175c 0x1890a4000 + 55132
8 QuartzCore 0x00000001889f9e18 0x1889ec000 + 56856
9 QuartzCore 0x00000001889f4880 0x1889ec000 + 34944
10 QuartzCore 0x00000001889f4724 0x1889ec000 + 34596
11 QuartzCore 0x00000001889f3eb8 0x1889ec000 + 32440
12 QuartzCore 0x00000001889f3c38 0x1889ec000 + 31800
13 UIKit 0x0000000189137f8c 0x1890a4000 + 606092
14 UIKit 0x0000000189137ef0 0x1890a4000 + 605936
15 CoreFoundation 0x000000018462c2a0 0x18454c000 + 918176
16 CoreFoundation 0x000000018462922c 0x18454c000 + 905772
17 CoreFoundation 0x000000018462955c 0x18454c000 + 906588
18 CoreFoundation 0x00000001845552d0 0x18454c000 + 37584
19 GraphicsServices 0x000000018dc436f8 0x18dc38000 + 46840
20 UIKit 0x000000018911afa8 0x1890a4000 + 487336
21 Vehicle Visuals 0x000000010013a1cc 0x1000ec000 + 319948
22 libdyld.dylib 0x0000000196412a04 0x196410000 + 10756
Thread 1 name: Dispatch queue: com.apple.libdispatch-manager
Als pro Bericht stürzt es auf OS-Version : iOS 8.3 (12F69).
Getestet habe ich meine app auf dem alle Simulatoren(iPad Air, iPad 2, iPad Retina) mit der gleichen config(iOS-version 8.3 (12F69)) und auch getestet, es auf meinem Gerät (iPad mini) mit iOS-version 8.3 (12F69), aber nicht abgestürzt auf meiner Seite.
Aber es stürzt bei meinem Freund ist das iPad Air mit der gleichen iOS-version (es gibt die gleichen crash-report mit verschiedenen ungültige Adresse wie unten)
Exception Type: EXC_BAD_ACCESS (SIGSEGV) Exception Subtyp:
KERN_INVALID_ADDRESS bei 0x0000000000000020 Ausgelöst durch den Thread: 0
Ich nicht das iPad Air, so dass ich Debuggen könnte mit dem Gerät.
Ich habe auch versucht, Symbolicated crash-Bericht mit dem folgenden Befehl.
xcrun atos -o VehicleVisuals 0x0000000000000020
Aber es macht mir einfach folgende hex-code.
0x00000020 (in VehicleVisuals)
Ich folgende Link für symbolication.
Ich bin einfach nicht in der Lage, zu erkennen, wo ist eigentlich das crash-Problem.
Bitte kann mir jemand helfen?
Gibt mir Folgendes Ergebnis : xcrun atos -o VehicleVisuals 0x0000000100101e80 encodingTable (in VehicleVisuals) + 4660
Mein app name ist "Fahrzeug " Visuals" so beim laufen atos-es gab mir Fehler "atos kann nicht geladen werden Symbole für die Datei VehicleVisuals für armv7s-Architektur.". Also benannte ich es VehicleVisuals, macht es Effekt während der Ausführung der atos?
Erinnert mich ein bug, den ich hatte. Haben Sie XCode verwenden, so senden Sie Ihr Projekt an iTunes Anschließen ? Wenn dem so ist, verwenden Sie App-Loader um zu sehen, ob es stürzt auch...
Ja, ich habe Xcode Einreichen, das Projekt an iTunes Anschließen.
InformationsquelleAutor Mahesh | 2015-06-18
Du musst angemeldet sein, um einen Kommentar abzugeben.
EXC_BAD_ACCESS in der Regel geschieht, weil Sie sind für das senden einer Obj-C-Nachricht an eine ungültige Speicheradresse, was bedeutet, dass Sie wahrscheinlich versuchen, Zugriff auf einige freigegeben Objekt.
Kann es sein, funktioniert auf anderen Geräten, da dieses Objekt nicht zur gleichen Zeit veröffentlicht.
Vor kurzem hatte ich einen ähnlichen Absturz, der passierte, weil es ein timer nicht für ungültig erklärt dealloc, und, wenn die Ziel-Methode aufgerufen wurde, wird das Objekt nicht mehr vorhanden ist.
Könnten Sie versuchen, zu aktivieren NSZombie Objekte und sehen, ob Sie finden das Objekt freigegeben wird, ist. In xCode 6, können Sie Sie aktivieren in der Produkt - > Schema > Bearbeiten von Schema > Diagnose - > Aktivieren Zombie-Objekte.
Außerdem gibt es viele dieser Art von Fehler, die NSZombieEnabled nicht erkennen kann. Leider gibt es nichts Magisches, es zu lösen. Die zweite option wäre, um führen Sie Ihre app mit Instrumenten (memory-leaks um genau zu sein) und sehen, wenn Sie etwas bekommen. Wenn dies nicht funktioniert, müssen Sie überprüfen Ihren code und überprüfen Sie, dass es gibt keine Möglichkeiten, dass Sie versuchen, Zugriff auf ein Objekt freigegeben. Hoffe, es hilft.
Glück!
Ja, es gibt viele von diese Art von Fehler, die NSZombieEnabled nicht erkennen kann. Leider gibt es nichts Magisches, es zu lösen. Die zweite option wäre, um führen Sie Ihre app mit Instrumenten (memory-leaks um genau zu sein) und sehen, wenn Sie etwas bekommen. Wenn dies nicht funktioniert, müssen Sie überprüfen Ihren code und überprüfen Sie, dass es gibt keine Möglichkeiten, dass Sie versuchen, Zugriff auf ein Objekt freigegeben. Hoffe, es hilft. Solche Fehler sind manchmal schwer zu Debuggen.
Danke für die Antwort. Ich hatte eigentlich herausgefunden, das Problem und jetzt funktioniert es einwandfrei. Eigentlich hatte ich, um es zu testen auf dem iPad Air, um herauszufinden, wo eigentlich EXC_BAD_ACCESS aufgetreten 🙂
Sie können hier die Lösung als das, was war die Ursache des Problems Sie konfrontiert und Auflösung.
InformationsquelleAutor Gemma del Olmo