Freigeben über


Andere WPF- und WinForms-APIs

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.

Anpassen der Protokollebene

Sie können die Anzahl der Protokollnachrichten steuern, die aus App Center in der Konsole angezeigt werden. Verwenden Sie die LogLevel API, um beim Debuggen zusätzliche Protokollierung zu aktivieren. Standardmäßig ist er für ASSERT die App Store-Umgebungen und WARN andernfalls auf festgelegt.

Verwenden Sie , um so viele Protokollmeldungen wie möglich zu erhalten LogLevel.Verbose.

AppCenter.LogLevel = LogLevel.Verbose;

Identifizieren von Installationen

Das App Center SDK erstellt nach der Installation der App eine UUID für jedes Gerät. Dieser Bezeichner bleibt für ein Gerät identisch, wenn die App aktualisiert wird und nur bei der erneuten Installation der App eine neue generiert wird. Die folgende API ist für Debuggingzwecke nützlich.

System.Guid? installId = await AppCenter.GetInstallIdAsync();

Identifizieren von Benutzern

Das App Center SDK unterstützt das Festlegen einer Benutzer-ID , die zum Erweitern von Absturzberichten verwendet wird. So verwenden Sie diese Funktion:

  1. Konfigurieren Sie das App Center SDK, indem Sie AppCenter.Start(...) aufrufen, wie im Leitfaden Erste Schritte für das App Center SDK beschrieben.
  2. Legen Sie einen userID im SDK mit dem folgenden Code fest:
AppCenter.SetUserId("your-user-id");

Nachdem Sie eine Benutzer-ID festgelegt haben, können Sie die Suchfunktion von App Center verwenden, um nach bestimmten Absturzberichten für die ID zu suchen. Weitere Informationen finden Sie in der App Center-Suchdokumentation.

Hinweis

Der Wert für die Benutzer-ID ist auf 256 Zeichen beschränkt. Es wird mit Ihren Absturzberichten angezeigt, aber nicht für die Aggregation oder Anzahl der betroffenen Benutzer verwendet. Wenn Sie die Benutzer-ID mehrmals festlegen, wird nur die letzte Benutzer-ID verwendet. Sie müssen die Benutzer-ID vor jedem Anwendungsstart selbst festlegen, da dieser Wert zwischen den Starts nicht vom SDK gespeichert wird.

Deaktivieren aller Dienste zur Laufzeit

Wenn Sie alle App Center-Dienste gleichzeitig deaktivieren möchten, verwenden Sie die Enabled -Eigenschaft. Wenn sie deaktiviert ist, leitet das SDK keine Informationen an App Center weiter.

AppCenter.SetEnabledAsync(false);

Um alle Dienste gleichzeitig zu aktivieren, verwenden Sie dieselbe API, übergeben true sie aber als Parameter.

AppCenter.SetEnabledAsync(true);

Sie müssen diesen Aufruf nicht abwarten, um andere API-Aufrufe (z IsEnabledAsync. B. ) konsistent auszuführen.

Der Zustand wird im Speicher des Geräts bei allen Anwendungsstarts beibehalten.

Ändern des Dienststatus in der Laufzeit

Aktivieren oder deaktivieren Sie die Dienste zur Laufzeit mit folgendem Code:

Analytics.SetEnabledAsync(false);

Netzwerkanforderungen nicht zulassen

Im App Center SDK sind Netzwerkanforderungen standardmäßig zulässig. Wenn Sie Daten senden möchten, die das App Center SDK vom Benutzer erfasst, können Sie das automatische Senden von Daten nicht zulassen.

AppCenter.IsNetworkRequestsAllowed = false;

In diesem Fall sammelt das App Center SDK weiterhin Daten, sie werden jedoch nur gesendet, wenn die Netzwerkanforderungen zulässig sind.

AppCenter.IsNetworkRequestsAllowed = true;

Hinweis

Dieser Wert wird zwischen den Starts beibehalten.

Sie können jederzeit überprüfen, ob das Senden von Daten im App Center SDK zulässig ist.

AppCenter.IsNetworkRequestsAllowed;

Überprüfen, ob App Center aktiviert ist

Sie können auch überprüfen, ob App Center aktiviert ist oder nicht.

bool enabled = await AppCenter.IsEnabledAsync();

Überprüfen der App Center SDK-Version zur Laufzeit

Sie können die Version des App Center SDK abrufen, die Sie derzeit verwenden.

AppCenter.SdkVersion;

Speichergröße

Bei Verwendung des App Center SDK werden Protokolle lokal auf dem Gerät gespeichert. Große Protokolle können viel Speicherplatz in Anspruch nehmen, sodass Sie die Größe der lokalen Datenbank einschränken können.

Sie können die SetMaxStorageSizeAsync API verwenden, um die Größe der lokalen Datenbank festzulegen. Die API ist asynchron, und der Rückruf wird aufgerufen, wenn Sie App Center Services starten. Aus diesem Grund SetMaxStorageSizeAsync muss vor ihrem Aufruf von AppCenter.Start(...)aufgerufen werden. Sie können die API nur einmal aufrufen.

// Use 20 MB for storage.
AppCenter.SetMaxStorageSizeAsync(20 * 1024 * 1024).ContinueWith((storageTask) => {
    // The storageTask.Result is false when the size cannot be honored.
});
AppCenter.Start("{Your App Secret}", typeof(Analytics));

Wenn Sie die maximale Speichergröße nicht festlegen, verwendet das SDK eine standardmäßige maximale Größe von 10 MB. Die Mindestgröße, die Sie festlegen dürfen, beträgt 20 KB.

Hinweis

Die tatsächliche maximale Speichergröße kann höher sein als der von Ihnen gewählte Wert. SQLite rundet die Größe auf das nächste Vielfache der Seitengröße auf. Das App Center SDK verwendet eine Seitengröße von 4 KB.

Hinweis

Protokolle, die älter als 25 Tage sind, werden verworfen.

Andere APIs

Das .NET NuGet-Paket wird für Xamarin und UWP freigegeben, die über mehr Funktionen verfügen. Alle APIs, die nicht für WPF und WinForms auf dieser Seite dokumentiert sind, geben oder zurück nullfalse und tun nichts für WPF und WinForms. Die anderen APIs sind sichtbar, sodass Sie sie in einer portablen Bibliothek verwenden können (z. B. bei Verwendung des SDK in einer Xamarin.Forms-Anwendung, die ein UWP-Projekt enthält), aber diese zusätzlichen APIs werden nicht in WPF und WinForms implementiert.