Android SDK 疑難解答

重要

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

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

需要哪些 Android 許可權?

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

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

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

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

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

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

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

  3. 如果您想要查看傳送至後端的記錄,請將記錄層級變更為應用程式中 的詳細資訊 ,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. 如果您想要查看傳送至後端的記錄,請將記錄層級變更為應用程式中 的詳細資訊 ,SDK 會在控制台中列印記錄。 在啟動 SDK 之前,請先呼叫下列 API。

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

    檢查記錄顯示 [App Center SDK 已成功設定] (信息記錄層級) ,然後檢查您是否看到 HTTPS 要求記錄。

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

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

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

  8. 若要檢查 App Center 後端是否收到損毀,請移至分析服務中的 [記錄流程] 區段。 您的當機應該會出現在該處,一旦傳送它。

散發和應用程式內更新會封鎖我的自動化UI測試

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

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
合作夥伴中心分析 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()
}