2017-01-13 2 views
2

Nach 3,5 Monaten im App Store bekam ich meinen ersten Absturzbericht. Dies wurde heute Morgen in iTunes Connect entdeckt. Innerhalb von XCode ging ich zu Fenster> Organizer> Abstürze> [App + App bauen, die den Absturz gemeldet haben]._GSRegisterPurpleNamedPortInPrivateNamespace - Absturz im App Store (Code im Anhang)

Der erste Screenshot unten ist der Crash-Bericht GUI: Crash Log from XCode Organizer

ich dann "Open im Projekt" geklickt(das ist der Aufruf zur Aktion Taste aus dem vorherigen Screenshot war)

"Open in Project" brachte mich in XCode. Hier ist, was die Debug-Navigator wie folgt aussieht:

Debug Manager

Ein Klick auf „7“ Haupt diese Klasse bringt: class

class UIButtonScrollView: UIScrollView { 

    override func touchesShouldCancel(in view: UIView) -> Bool { 
     if (view.isKind(of: UIButton.self)) { 
      return true 
     } 

     return super.touchesShouldCancel(in: view) 

    } 

} 

Ich vermute, dass der Code ist, die für die Entstehung verantwortlich sein kann der Absturz. Der Zweck dieser UIScrollView-Unterklasse besteht darin, das Scrollen (während der Benutzer den Finger direkt auf einer Schaltfläche scrollt) einer langen Liste von Schaltflächen innerhalb eines kleinen Scrollview in der App zu behandeln.

Der Absturzbericht besagt, dass es auf einem iPhone 5s mit 9.1 passiert ist. Ich habe alles versucht, um den Absturz in diesem Simulator zu reproduzieren, und konnte es nicht. Es läuft einwandfrei für mich.

Warum/was hat den Absturz von _GSRegisterPurpleNamedPortInPrivateNamespace verursacht? Sehe ich an der falschen Stelle, um zu versuchen, meinen Code (UIButtonScrollView) zu debuggen? Ich möchte das in den Hintern kneifen bevor es einem anderen User passiert. Jede Anleitung zu meinen obigen Fragen wird geschätzt. Danke :)

Antwort

4

Xcode zeigt hier die falsche Datei an. Der Absturz erfolgt im internen Initialisierungscode, bevor Code ausgeführt wird. (Genauer gesagt tritt es in der main()-Funktion auf, die automatisch von Swift generiert wird, wenn es das @UIApplicationMain-Attribut sieht.)

Wahrscheinlich ist dieser Absturz ein zufälliger Fehler, der möglicherweise durch ein Hardwareproblem auf dem Gerät des Benutzers verursacht wird. Wenn Sie es nur einmal gesehen haben, können Sie es ignorieren.

+0

Das ist ein Hauch von Erleichterung. Frage aber - Woher wissen Sie, dass Xcode die falsche Datei anzeigt? Sie sagen also, dass dieser Absturz aufgetreten ist, bevor der Benutzer überhaupt in der Lage war, die Anwendung zu öffnen? (aufgrund eines möglichen Hardwareproblems) – Joe

+0

Sie haben auf den Anrufrahmen für 'main' geklickt, und der Code, den Sie zuletzt angesehen haben, ist nicht' main'. Ich bin mir nicht sicher, wie du das gesehen hast, aber es stimmt überhaupt nicht mit dem Call-Stack überein - das muss ein seltsamer Xcode-Bug sein. – duskwuff

+0

Habe genau den gleichen Fehler in iOS 10.3.2 mit unserem Spiel mit Unity gemacht ... Ich ignoriere es jetzt einfach, danke für die Antwort. –

Verwandte Themen