閱讀英文

共用方式為


其他macOS API

重要

Visual Studio App Center 已排定於 2025 年 3 月 31 日淘汰。 雖然您可以繼續使用 Visual Studio App Center,直到完全淘汰為止,但有數個建議的替代方案可以考慮移轉至。

深入瞭解支持時程表和替代方案。

調整記錄層級

您可以控制控制台中從 App Center 顯示的記錄訊息數量。 setLogLevel:使用 -API 在偵錯時啟用其他記錄。 根據預設,它會針對 App Store 環境設定為 LogLevelAssertLogLevelWarning否則為 。

若要盡可能有多個記錄訊息,請使用 MSACLogLevelVerbose/LogLevel.verbose

AppCenter.logLevel = .verbose

識別安裝

App Center SDK 會在安裝應用程式之後,為每個裝置建立 UUID。 當應用程式更新時,裝置的這個標識碼會維持不變,而且只有在重新安裝應用程式時才會產生新的標識符。 下列 API 適用於偵錯用途。

var installId = AppCenter.installId

識別使用者

App Center SDK 支援設定用來增強當機報告 的使用者標識碼 。 若要使用這項功能:

  1. App Center SDK 使用者入門指南中所述,呼叫 :start:withServices: 來設定 App Center SDK。
  2. userID使用下列程式代碼在 SDK 中設定 :
AppCenter.userId = "your-user-id"

設定使用者標識碼之後,您可以使用 App Center 的搜尋功能來搜尋標識碼的特定損毀報告。 深入瞭解 App Center 的 搜尋檔

注意

用戶標識碼的值限製為 256 個字元。 其會顯示為您的當機報告,但不會用於受影響用戶的匯總或計數。 如果您多次設定使用者標識碼,則只會使用最後一個使用者識別碼。 您必須在每次應用程式啟動時自行設定使用者標識碼,因為 SDK 不會在啟動之間儲存此值。

停用運行時間的所有服務

如果您想要一次停用所有 App Center 服務,請使用 setEnabled API。 停用時,SDK 不會將任何信息轉送至 App Center。

AppCenter.enabled = false

若要再次啟用所有服務,請使用相同的 API,但傳遞 YES/true 為參數。

AppCenter.enabled = true

狀態會保存在裝置的記憶體中,而應用程式會啟動。

注意

只有在啟動之後 AppCenter ,才能使用這個方法。

不允許網路要求

在 App Center SDK 中,預設允許網路要求。 如果您想要傳送 App Center SDK 由使用者所收集的數據,您可以不允許自動傳送資料。

AppCenter.networkRequestsAllowed = false

在此情況下,App Center SDK 會繼續收集數據,但只有在允許網路要求時才會傳送。

AppCenter.networkRequestsAllowed = true

注意

此值會在開始之間保留。

您可以隨時檢查是否允許在 App Center SDK 中傳送數據。

AppCenter.networkRequestsAllowed

變更運行時間中的服務狀態

使用下列程式代碼在執行時間啟用或停用服務:

Analytics.enabled = false

注意

只有在啟動之後 Analytics ,才能使用這個方法。

檢查 App Center 是否已啟用

您也可以檢查 App Center 是否已啟用。

AppCenter.enabled

注意

這個方法只能在啟動之後 AppCenter 使用,它一律會在開始之前傳回 false

在運行時間檢查 App Center SDK 版本

您可以取得您目前使用的 App Center SDK 版本。

AppCenter.sdkVersion

儲存體大小

使用 App Center SDK 時,記錄會儲存在本機裝置上。 大型記錄可能會佔用大量空間,因此您可以選擇限制本機資料庫的大小。 它也會與和 resume API 搭配pause使用。 如果您預期會暫停一段時間,您可以使用較大的資料庫大小來儲存更多事件。

setMaxStorageSize使用 API 來設定本機 DB 的大小。 API 是異步的,當您 completionHandler 啟動 App Center 服務時會呼叫 。 基於這個理由, setMaxStorageSize 必須在呼叫 之前呼叫 AppCenter.start。 您只能呼叫 API 一次。

// Use 20 MB for storage.
[MSACAppCenter setMaxStorageSize:(20 * 1024 * 1024) completionHandler:^(BOOL success) {
    if (!success) {
        // The success parameter is false when the size can't be honored.
    }
}];
[MSACAppCenter start:@"{Your App Secret}", withServices:@[[MSACAnalytics class]]];
// Use 20 MB for storage.
AppCenter.setMaxStorageSize(20 * 1024 * 1024, completionHandler: { (success) in
    if !success {
        // The success parameter is false when the size can't be honored.
    }
})
AppCenter.start(withAppSecret: "{Your App Secret}", services:[Analytics.self])

如果您未設定記憶體大小上限,SDK 會使用預設大小上限 10 MB。 您可以設定的大小下限為 20 KB。

注意

實際的記憶體大小上限可能會稍微高於您選擇的值。 SQLite 會將大小四捨五入到頁面大小的下一個倍數。 App Center SDK 使用 4 KB 的頁面大小。

注意

超過25天的記錄將會捨棄。

不成功的 API 呼叫

呼叫可能會傳回 false 的原因有很多 completionHandler

  • 指定的大小是無效的值, (小於 20 KB 或大於 140 TB) 。
  • 目前的資料庫大小大於指定的大小上限。
  • 已呼叫 API。 每個進程只能設定一次。
  • API 已在 或AppCenter.configure之後AppCenter.start呼叫。

您可以使用記錄標籤檢查主控台 AppCenter 中的警告和錯誤,以針對設定問題進行疑難解答。