開始使用 Android

重要

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

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

App Center SDK 使用模組化架構,因此您可以使用任何或所有服務。

您可以在 App Center SDK 所收集的數據一般數據保護規定常見問題 頁面上,找到 App Center 所收集的數據相關信息。

讓我們開始在您的應用程式中設定 App Center Android SDK,以使用 App Center Analytics 和 App Center 當機。 若要將App Center散發新增至您的應用程式,請參閱 App Center散發檔

1.Prerequisites

開始之前,請確定您已符合下列必要條件:

  • Android 專案是在 Android Studio 中設定。
  • 您的目標是執行 Android 5.0 版 (API 層級 21) 或更新版本的裝置。

2.在 App Center 入口網站中建立您的應用程式,以取得應用程式秘密

如果您已在 App Center 入口網站中建立您的應用程式,您可以略過此步驟。

  1. 前往 appcenter.ms
  2. 註冊或登入,然後按下頁面右上角的 [ 新增 ] 按鈕,然後從下拉菜單中選取 [ 新增應用程式 ]。
  3. 輸入應用程式的名稱和選擇性描述。
  4. 選取 [Android ] 作為 [操作系統] 和 [ Java ] 作為平臺。
  5. 按兩下 [ 新增應用程式 ] 按鈕。

建立應用程式之後,您可以在 2 底下的 [使用者入門] 頁面上取得其應用程式密碼。啟動 SDK。 或者,您可以按兩下 [ 設定],然後在右上角按兩下 三個垂直點 ,然後選取 [複製應用程式密碼 ] 以取得您的應用程式密碼。

3.新增 App Center SDK 模組

  1. 開啟專案的 app 層級 build.gradle 檔案, () app/build.gradle ,並在 之後 apply plugin新增下列幾行。 在專案中包含您想要的相依性。 本節中每個 SDK 模組都必須新增為個別的相依性。 如果您想要使用 App Center Analytics 和當機,請新增下列幾行:
dependencies {
    def appCenterSdkVersion = '5.0.4'
    implementation "com.microsoft.appcenter:appcenter-analytics:${appCenterSdkVersion}"
    implementation "com.microsoft.appcenter:appcenter-crashes:${appCenterSdkVersion}"
}

注意

如果您的 Android Gradle 外掛程式版本低於 3.0.0,則您需要以編譯取代字組實作。

注意

由於 jCenter 支援終止 ,我們的所有元件都已移至 Maven Central 存放庫。 請遵循 本指南 ,以瞭解如何從 jCenter 移轉至 Maven Central。 請注意,Maven Central 不包含已被取代的模組。 請確定您的項目沒有已淘汰 App Center SDK 模組的相依性。

  1. 請務必在 Android Studio 中觸發 Gradle 同步處理。

既然您已在應用程式中整合 SDK,現在可以啟動 SDK 並使用 App Center。

4.啟動 SDK

4.1 新增 start () 方法

若要使用 App Center,您必須加入加入您想要使用的模組 () 。 根據預設,不會啟動任何模組,而且您必須在啟動 SDK 時明確呼叫每個模組。
在應用程式的主要活動類別內插入下列這一行- onCreatecallback,以使用 App Center AnalyticsApp Center 當機

AppCenter.start(getApplication(), "{Your App Secret}", Analytics.class, Crashes.class);
AppCenter.start(application, "{Your App Secret}", Analytics::class.java, Crashes::class.java)

警告

不建議在原始碼中內嵌您的應用程式密碼。

如果您需要個別啟動 App Center 服務,您應該:

  1. 使用應用程式密碼進行設定或啟動。
  2. 如果可以多次呼叫程式代碼,請檢查App Center是否已設定。
  3. 在沒有應用程式密碼的情況下,啟動必要的服務 () 。
AppCenter.configure(application, "{Your App Secret}");
if (AppCenter.isConfigured()) {
    AppCenter.start(Analytics.class);
    AppCenter.start(Crashes.class);
}
AppCenter.configure(application, "{Your App Secret}");
if (AppCenter.isConfigured()) {
    AppCenter.start(Analytics::class.java);
    AppCenter.start(Crashes::class.java);
}

例如,如果您的應用程式有多個進入點 (,深層連結活動、服務或廣播接收者) ,請在應用程式自定義類別或每個進入點中呼叫 start 。 在後者的情況下,請檢查App Center是否已在呼叫之前 start 設定:

if (!AppCenter.isConfigured())) {
  AppCenter.start(getApplication(), "{Your App Secret}", Analytics.class, Crashes.class);
}
if (!AppCenter.isConfigured()) {
  AppCenter.start(application, "{Your App Secret}", Analytics::class.java, Crashes::class.java)
}

4.2 以您的應用程式秘密取代佔位元

請務必以應用程式的實際值取代 {Your App Secret} 文字。 您可以在 App Center 入口網站的 [使用者入門] 頁面或 [設定] 頁面上找到應用程式密碼。

[使用者入門] 頁面包含上述程式代碼範例,其中含有您的應用程式密碼,您可以直接複製並貼上整個範例。

上述範例示範如何使用 start() 方法,並同時包含App Center Analytics和App Center當機。

如果您不想使用這兩個服務之一,請從上述方法呼叫中移除對應的參數。

除非您在 start 方法中明確將每個模組指定為參數,否則您無法使用該 App Center 服務。 此外, start() API 只能在您應用程式的生命週期中使用一次– 所有其他呼叫都會將警告記錄到主控台,而且只有第一次呼叫中包含的模組可供使用。

例如 - 如果您只想要上線至 App Center Analytics,您應該修改 start() API 呼叫,如下所示:

AppCenter.start(getApplication(), "{Your App Secret}", Analytics.class);
AppCenter.start(application, "{Your App Secret}", Analytics::class.java)

當您插入 start() 方法之後,Android Studio 會自動建議必要的匯入語句,但如果您看到無法辨識類別名稱的錯誤,請將下列幾行新增至活動類別中的 import 語句:

import com.microsoft.appcenter.AppCenter;
import com.microsoft.appcenter.analytics.Analytics;
import com.microsoft.appcenter.crashes.Crashes;
import com.microsoft.appcenter.AppCenter
import com.microsoft.appcenter.analytics.Analytics
import com.microsoft.appcenter.crashes.Crashes

您全都已設定為在 SDK 自動收集的入口網站上可視化分析和當機數據。

查看 App Center AnalyticsApp Center 當機 的檔,瞭解如何自定義和使用這兩項服務的更進階功能。

若要瞭解如何開始使用應用程式內更新,請閱讀 App Center 散發檔。

5.僅 (Android 備份規則)

注意

目標為 Android 6.0 (API 層級 23) 或更高版本的應用程式會自動啟用自動備份。 

注意

如果您已經有具有備份規則的自定義檔案,請切換至第三個步驟。

如果您使用自動備份來避免取得裝置的相關不正確資訊,請遵循後續步驟:

5.1. 針對Android 11 (API 層級30) 或更低。

  1. res/xml 資料夾中建立 appcenter_backup_rule.xml 檔案。
  1. 開啟專案的 AndroidManifest.xml 檔案。 將 android:fullBackupContent 屬性新增至 <application> 專案。 它應該指向 appcenter_backup_rule.xml 資源檔。
android:fullBackupContent="@xml/appcenter_backup_rule"
  1. 將下列備份規則新增至 appcenter_backup_rule.xml 檔案:
<full-backup-content xmlns:tools="http://schemas.android.com/tools">
      <exclude domain="sharedpref" path="AppCenter.xml"/>
      <exclude domain="database" path="com.microsoft.appcenter.persistence"/>
      <exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
      <exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
      <exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
  </full-backup-content>

5.2. 針對Android 12 (API 層級31) 或更高版本。

  1. res/xml 資料夾中建立 appcenter_backup_rule.xml 檔案。
  1. 開啟專案的 AndroidManifest.xml 檔案。 將 android:dataExtractionRules 屬性新增至 <application> 專案。 它應該指向 appcenter_backup_rule.xml 資源檔。
android:dataExtractionRules="@xml/appcenter_backup_rule"
  1. 將下列備份規則新增至 appcenter_backup_rule.xml 檔案:
<data-extraction-rules xmlns:tools="http://schemas.android.com/tools">
    <cloud-backup>
        <exclude domain="sharedpref" path="AppCenter.xml"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
        <exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
        <exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
    </cloud-backup>
    <device-transfer>
        <exclude domain="sharedpref" path="AppCenter.xml"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence"/>
        <exclude domain="database" path="com.microsoft.appcenter.persistence-journal"/>
        <exclude domain="file" path="error" tools:ignore="FullBackupContent"/>
        <exclude domain="file" path="appcenter" tools:ignore="FullBackupContent"/>
    </device-transfer>
</data-extraction-rules>