Share via


Problembehandlung für das macOS SDK

Wichtig

Visual Studio App Center wird am 31. März 2025 eingestellt. Sie können Visual Studio App Center zwar weiterhin verwenden, bis es vollständig eingestellt ist, es gibt jedoch mehrere empfohlene Alternativen, zu denen Sie möglicherweise eine Migration in Erwägung ziehen.

Erfahren Sie mehr über Supportzeitpläne und Alternativen.

Probleme beim Einrichten

  1. Suchen Sie in der Konsole nach einem Assert-Protokoll mit der Meldung "App Center SDK erfolgreich konfiguriert". Dadurch wird überprüft, ob das SDK erfolgreich konfiguriert wurde.
  2. Wenn Sie Cocoapods verwenden, um App Center in Ihre macOS-App zu integrieren und einen Fehler mit der Meldung - CocoaPods - Unable to find a specification for AppCenterauftritt, führen Sie aus pod repo update , um Ihr lokales Cocoapods-Repository zu aktualisieren, und führen Sie dann erneut aus pod install .
  3. Wenn Sie die SDK-Binärdateien manuell integrieren, stellen Sie sicher, dass Ihre Module für Ihr Projekt aktiviert sind.

Analysedaten werden nicht im Portal angezeigt.

  1. Stellen Sie sicher, dass Sie die SDK-Module ordnungsgemäß integriert haben.

  2. Stellen Sie sicher, dass das richtige App-Geheimnis zusammen mit dem start:withServices: Methodenaufruf enthalten ist. Sie können den genauen start:withServices:-Code kopieren, indem Sie die App im Portal öffnen und zu Erste Schritte Seite navigieren.

  3. Wenn Die Protokolle an das Back-End gesendet werden sollen, ändern Sie die Protokollebene in Ihrer Anwendung in Ausführlich , und das SDK gibt die Protokolle in der Konsole aus. Fügen Sie den folgenden Aufruf ein, bevor das SDK gestartet wird:

    [MSACAppCenter setLogLevel:MSACLogLevelVerbose]
    
    AppCenter.logLevel = .verbose
    

    Stellen Sie sicher, dass "App Center SDK erfolgreich konfiguriert" in den Protokollen (auf INFO-Protokollebene ) angezeigt wird. Überprüfen Sie dann, ob HTTPS-Anforderungsprotokolle angezeigt werden.

  4. Stellen Sie sicher, dass Ihr Gerät online ist und die App über Internetzugriff verfügt.

    Hinweis

    Wenn Ihre App die App Sandbox verwendet, müssen Sie die Funktion so festlegen, dass eingehende Verbindungen (Server) und ausgehende Verbindungen (Client) zugelassen werden, damit die App Zugriff auf das Internet hat. Xcode 9 aktiviert die App Sandbox standardmäßig, aber die Funktionen für ein- und ausgehende Verbindungen müssen explizit festgelegt werden.

    Wählen Sie Ihr Projekt im Projektnavigator aus, wählen Sie die Registerkarte Funktionen aus, und wenn Ihre App die Sandbox verwendet, fügen Sie die Funktionen für ein- und ausgehende Verbindungen hinzu.

  5. Manchmal kann es einige Minuten dauern, bis Protokolle im Portal angezeigt werden. Warten Sie einige Zeit, wenn dies der Fall ist.

  6. Um zu überprüfen, ob das App Center-Back-End Ihre Daten empfangen hat, wechseln Sie zum Abschnitt Protokollfluss im Analytics-Dienst . Ihre Ereignisse sollten angezeigt werden, sobald sie gesendet wurden.

Abstürze werden im Portal nicht angezeigt.

  1. Stellen Sie sicher, dass Sie die SDK-Module ordnungsgemäß integriert haben.

  2. Stellen Sie sicher, dass das richtige App-Geheimnis zusammen mit dem start:withServices: Methodenaufruf enthalten ist. Sie können den genauen start:withServices: Code kopieren, indem Sie die App im Portal öffnen und zu Erste Schritte Seite navigieren.

  3. Starten Sie die App nach einem Absturz neu. App Center-Abstürze leitet das Absturzprotokoll erst weiter, nachdem die App neu gestartet wurde. Außerdem leitet das SDK keine Absturzprotokolle weiter, wenn Sie an den Debugger angefügt sind. Stellen Sie sicher, dass der Debugger nicht angefügt ist, wenn Sie die App abstürzen.

  4. Wenn Die Protokolle an das Back-End gesendet werden sollen, ändern Sie die Protokollebene in Ihrer Anwendung in Ausführlich , und das SDK gibt die Protokolle in der Konsole aus. Fügen Sie den folgenden Aufruf ein, bevor das SDK gestartet wird:

    [MSACAppCenter setLogLevel:MSACLogLevelVerbose]
    
    AppCenter.logLevel = .verbose
    

    Stellen Sie sicher, dass "App Center SDK erfolgreich konfiguriert" in den Protokollen (auf INFO-Protokollebene ) angezeigt wird. Überprüfen Sie dann, ob HTTPS-Anforderungsprotokolle angezeigt werden.

  5. Verwenden Sie keine anderen Bibliotheken, die Absturzberichterstattungsfunktionen bereitstellen. Sie können nur ein SDK für die Absturzberichterstattung in Ihre App integrieren.

  6. Stellen Sie sicher, dass Ihr Gerät online ist und die App über Internetzugriff verfügt.

    Hinweis

    Wenn Ihre App die App Sandbox verwendet, müssen Sie die Funktion so festlegen, dass eingehende Verbindungen (Server) und ausgehende Verbindungen (Client) zugelassen werden, damit die App Zugriff auf das Internet hat. Xcode 9 aktiviert die App Sandbox standardmäßig, aber die Funktionen für ein- und ausgehende Verbindungen müssen explizit festgelegt werden.

    Wählen Sie Ihr Projekt im Projektnavigator aus, wählen Sie die Registerkarte Funktionen aus, und wenn Ihre App die Sandbox verwendet, aktivieren Sie eingehende und ausgehende Verbindungen.

  7. Manchmal kann es einige Minuten dauern, bis Protokolle im Portal angezeigt werden. Warten Sie einige Zeit, wenn dies der Fall ist.

  8. Wenn Sie überprüfen möchten, ob das SDK den Absturz beim nächsten App-Start erkannt hat, können Sie die API aufrufen, um zu überprüfen, ob die App in der letzten Sitzung abgestürzt ist und eine Warnung anzeigt. Oder Sie können den Absturzrückruf didSucceedSendingErrorReport erweitern, um festzustellen, ob er erfolgreich an den Server gesendet wurde.

  9. Um zu überprüfen, ob das App Center-Back-End den Absturz erhalten hat, wechseln Sie im Analysedienst zum Abschnitt Protokollflow. Ihre Abstürze sollten dort angezeigt werden, nachdem sie gesendet wurden.

Schützen des App Center-Geheimniswerts

Der app_secret ist ein Bezeichner Ihrer App, es muss wissen, für welche App der Datenverkehr gilt, und es kann nicht zum Abrufen oder Bearbeiten vorhandener Daten verwendet werden. Wenn Sie app_secret verfügbar gemacht werden, besteht das größte Risiko darin, fehlerhafte Daten an Ihre App zu senden, aber dies hat keinen Einfluss auf die Sicherheit der Daten.

Um vertrauliche Daten abzurufen, müssen Sie ein App-/ Benutzertoken bereitstellen, das auf der Clientseite generiert wird. Es gibt keine Möglichkeit, Daten auf der Clientseite vollständig sicher zu machen.

Sie können die Sicherheit Ihrer App verbessern, indem Sie eine Umgebungsvariable verwenden, um das App-Geheimnis in Ihren Code einzufügen. Auf diese Weise ist das Geheimnis in Ihrem Code nicht sichtbar.