共用方式為


Android SDK 疑難解答

這很重要

Visual Studio App Center 於 2025 年 3 月 31 日淘汰,但分析和診斷功能除外,這些功能將持續支援到 2026 年 6 月 30 日。 瞭解更多資訊。

需要哪些 Android 許可權?

視您使用的服務而定,需要下列許可權:

  • 所有服務: INTERNETACCESS_NETWORK_STATE
  • 散發: REQUEST_INSTALL_PACKAGESDOWNLOAD_WITHOUT_NOTIFICATION

SDK 會自動將必要許可權合併到您應用程式的指令清單中。

這些許可權都不需要在運行時獲得使用者的核准,都是安裝時的許可權。

分析數據不會顯示在入口網站中

  1. 請確定您已正確整合 SDK 模組。

  2. 請確定包含正確的應用程式密鑰以及 start() 方法呼叫。 您可以在入口網站中開啟應用程式並流覽至 [用戶入門] 頁面,以複製確切 start() 的程序代碼。

  3. 如果您想要查看傳送至後端的記錄,請將記錄層級變更為應用程式中 的 Verbose,SDK 會在控制台中列印記錄。 在您啟動 SDK 之前,請先呼叫下列 API。

    AppCenter.setLogLevel(Log.VERBOSE);
    
    AppCenter.setLogLevel(Log.VERBOSE)
    

    檢查記錄顯示「App Center SDK 已成功設定」(在資訊記錄層級中),然後檢查您是否看到 HTTPS 要求記錄。

  4. 請確定您的裝置已上線。

  5. 有時,記錄可能需要幾分鐘的時間才會出現在入口網站中。 如果情況如此,請稍候一段時間。

  6. 若要檢查 App Center 後端是否收到您的數據,請移至 Analytics 服務中的 [記錄流程] 區段。 事件傳送後應立即出現。

當機未顯示在入口網站中

  1. 請確定您已正確整合 SDK 模組。

  2. 請確定包含正確的應用程式密鑰以及 start() 方法呼叫。 您可以在入口網站中開啟應用程式並流覽至 [用戶入門] 頁面,以複製確切 start() 的程序代碼。

  3. 當機後重新啟動應用程式。 我們的 SDK 只會在重新啟動時轉送當機記錄檔。

  4. 如果您想要查看傳送至後端的記錄,請將記錄層級變更為應用程式中 的 Verbose,SDK 會在控制台中列印記錄。 在您啟動 SDK 之前,請先呼叫下列 API。

    AppCenter.setLogLevel(Log.VERBOSE);
    
    AppCenter.setLogLevel(Log.VERBOSE)
    

    檢查記錄顯示「App Center SDK 已成功設定」(在資訊記錄層級中),然後檢查您是否看到 HTTPS 要求記錄。

  5. 請確定您的裝置已上線。

  6. 有時,記錄可能需要幾分鐘的時間才會出現在入口網站中。 如果情況如此,請稍候一段時間。

  7. 如果您想要檢查 SDK 是否偵測到下一個應用程式啟動時當機,您可以呼叫 API 來檢查應用程式是否在最後一個工作階段中當機,並顯示警示。 或者,您可以擴充當機回呼,以查看它是否已成功傳送至伺服器。

  8. 若要檢查 App Center 後端是否收到當機,請移至 Analytics 服務中的 [記錄流程] 區段。 您的當機一旦被傳送,就會出現在那裡。

發布和應用內更新會封鎖我的自動化使用者介面測試

如果您正在執行自動化UI測試,啟用的應用程式內更新將會封鎖您的自動化UI測試,因為它們會嘗試對App Center後端進行驗證。 建議您不要為 UI 測試啟用 App Center Distribute。

App Center SDK 對 Android 應用程式大小有何影響?

App Center SDK 的設計目的是對應用程式安裝大小的影響最小。

為了說明這一點,我們已使用Android Studio的「空白應用程式」範本建立空的Java應用程式。 我們會在發行組態中建置應用程式,並在執行 Android 7.0 的裝置上安裝應用程式。

測試是在未啟用 Proguard 的情況下執行的。

下列數位可能會有所不同,並視您的組建設定而定,因此請考慮其為粗略指南。 如果您使用 Proguard,SDK 對應用程式的影響會更低。

使用的 App Center 模組 導出的 APK 大小 裝置所報告的安裝大小
沒有 (空白應用程式) 1.3 MB 3.43 MB
App Center 分析 1.4 MB 3.63 MB
App Center 當機 1.4 MB 3.70 MB
App Center 發佈 1.4 MB 3.71 MB
所有 App Center 模組 1.4 MB 3.82 MB

保護 App Center 機密值

app_secret是應用程式的標識碼,必須知道流量套用到哪個應用程式,而且無法用來擷取或編輯現有數據。 如果您的app_secret被曝露,最大的風險是將錯誤資料傳送至您的應用程式,但是不會影響資料的安全性。

若要擷取任何敏感數據,您必須提供用戶端上產生的應用程式/使用者 令牌。 無法讓客戶端上的數據完全安全。

您可以使用環境變數將應用程式秘密插入程式碼,以改善應用程式的安全性。 如此一來,您的程式代碼中就看不到秘密。

從 jCenter 移轉至 Maven Central

由於 jCenter 支援終止 ,所有元件都已移至 Maven Central 存放庫。 若要使用 App Center,您必須將 新增 mavenCentral() 至 Gradle 檔案中的存放庫,如下所示:

repositories {
   google()
   mavenCentral()
}