其他 tvOS Api

調整記錄層級

您可以在主控台中控制從 App Center 顯示的記錄訊息數量。 使用 setLogLevel: -API 可在進行調試時啟用額外的記錄功能。 根據預設,它會設定為 App Store 環境的,否則會設為 LogLevelAssert LogLevelWarning

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

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

識別安裝

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

NSUUID *installId = [MSACAppCenter  installId];
var installId = AppCenter.installId

識別使用者

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

  1. :start:withServices:APP Center sdk 快速入門手冊中所述,呼叫以設定 App center sdk。
  2. userID使用下列程式碼在 SDK 中設定:
[MSACAppCenter setUserId:@"your-user-id"];
AppCenter.userId = "your-user-id"

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

注意

使用者識別碼的值限制為256個字元。 它會與您的損毀報告一起顯示,但不會用於匯總或受影響之使用者的計數。 如果您設定使用者識別碼多次,則只會使用最後一個使用者識別碼。 您必須在每個應用程式啟動前自行設定使用者識別碼,因為此值不是由 SDK 在啟動之間儲存的。

在執行時間停用所有服務

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

[MSACAppCenter setEnabled:NO];
AppCenter.enabled = false

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

[MSACAppCenter setEnabled:YES];
AppCenter.enabled = true

狀態會保存在應用程式啟動之間的裝置儲存區中。

注意

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

不允許網路要求

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

[MSACAppCenter setNetworkRequestsAllowed:false];
AppCenter.networkRequestsAllowed = false

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

[MSACAppCenter setNetworkRequestsAllowed:true];
AppCenter.networkRequestsAllowed = true

注意

此值會在開始時保留。

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

[MSACAppCenter isNetworkRequestsAllowed];
AppCenter.networkRequestsAllowed

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

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

[MSACAnalytics setEnabled:NO];
Analytics.enabled = false

注意

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

檢查是否已啟用 App Center

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

[MSACAppCenter isEnabled];
AppCenter.enabled

注意

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

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

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

[MSACAppCenter sdkVersion];
AppCenter.sdkVersion

您可以藉由呼叫 API 來設定自訂屬性 setCustomProperties 。 自訂屬性的有效索引鍵應符合正則運算式模式 ^[a-zA-Z][a-zA-Z0-9]*$ 。 自訂屬性的值可以是下列其中一種類型: NSStringNSNumber BOOLNSDate

MSACCustomProperties *customProperties = [MSACCustomProperties new];
[customProperties setString:@"blue" forKey:@"color"];
[customProperties setNumber:@(10) forKey:@"score"];
[MSACAppCenter setCustomProperties:customProperties];
var customProperties = CustomProperties()
customProperties.setString("blue", forKey: "color")
customProperties.setNumber(10, forKey: "score")
AppCenter.customProperties = customProperties

注意

如果您多次設定相同的自訂屬性,最後一個值將會覆寫先前的值。

您可以藉由呼叫 API 來移除任何自訂屬性 clearPropertyForKey 。 這只會移除裝置的屬性值。 它不會從 App Center 入口網站移除屬性名稱。

MSACCustomProperties *customProperties = [MSACCustomProperties new];
[customProperties clearPropertyForKey:@"score"];
[MSACAppCenter setCustomProperties:customProperties];
var customProperties = CustomProperties()
customProperties.clearProperty(forKey: "score")
AppCenter.customProperties = customProperties

儲存體大小

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

使用 setMaxStorageSize API 來設定本機資料庫的大小。 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.start AppCenter.configure

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