Android 版面配置診斷

Android 版面配置診斷旨在藉由醒目提示常見的質量問題和實用的優化,協助改善 Android 版面配置檔案的品質。 此功能適用於 Visual Studio 16.5+ 和 Visual Studio for Mac 8.5+。

系統會針對各種問題提供一組預設的分析器,而且每個分析器都可以自定義,以涵蓋專案的特定需求。 分析器會鬆散地以Android linting系統為基礎。

在 Visual Studio 2019 上啟用 Android 版面配置診斷

請確定已啟用配置診斷設定 [啟用配置診斷]。 若要存取此選項頁面,請選擇 [工具>選項],然後選擇 [文本編輯器>Android XML>進階]:

Options dialog showing how to enable diagnostics option

開啟之後,Android 版面設定編輯器會顯示問題:

Android diagnostics enabled on Visual Studio 2019

功能

下列各節概述 Android 版面配置診斷中可用的功能。

分析器

分析器可用來協助偵測配置檔案中的問題、減少硬式編碼的值、改善效能和旗標錯誤。 如需分析器清單,請參閱 Android 設計工具診斷分析器

診斷組態

您可以使用 XML 檔案來設定分析器,讓您變更預設嚴重性層級、忽略特定檔案,以及傳入變數。

如果您有一組您想要跨多個 Android 應用程式共享的設定,您可以使用基準檔案。 若要使用此功能,請建立新的組態檔,並將 附加 -baseline 至檔名。 系統會先套用基準組態,然後套用其餘的組態檔。

提示

如果您想要忽略新或現有 Android 應用程式上的一組問題,這會很有用。

其格式為:

<?xml version="1.0" encoding="utf-8" ?> 
<configuration>
    <issue id="DuplicateIDs" severity="warning">
        <ignore path="Resources/layout/layout1.xml" />
    </issue>
    <issue id="HardcodedText" severity="informational">
        <ignore path="Resources/layout/layout1.xml" />
        <ignore path="Resource/layout/layout2.xml" />
    </issue>
    <issue id="TooManyViews">
        <variable name="MAX_VIEW_COUNT" value="12" />
    </issue>
    <issue id="TooDeepLayout">
        <variable name="MAX_DEPTH" value="12" />
    </issue>
</configuration>

注意

目前唯一的變數分別為 MAX_VIEW_COUNT 和 (預設值: 80) 和 MAX_DEPTH (預設值: 10)。TooManyViewsTooDeepLayout

嚴重性層級如下:

  • 建議
  • 資訊
  • 警告
  • 錯誤
  • 忽略

新增組態檔

在 Android 應用程式專案的根目錄中建立新的 XML 檔案。 檔案名並不重要,但此範例會使用 AndroidLayoutDiagnostics.xml

Add New Item

新增 XML 檔案之後,它應該會出現在 Android 應用程式專案樹狀目錄中:

Android App Project Tree

請確定建置動作已設定為 屬性面板中的AndroidResourceAnalysisConfig 。 提取新檔案的屬性面板最簡單的方式,就是以滑鼠右鍵按下檔案,然後選取屬性。 顯示屬性面板之後,您應該將 [建置動作 ] 變更為 AndroidResourceAnalysisConfig

Set Build Action in Item Properties

現在您有空白的 XML 檔案,您需要新增 <configuration> 根元素。 此時,您可以調整任何支援問題的預設行為。 如果您要確保硬式編碼字串被視爲錯誤,請新增:

<issue="HardcodedText" severity="error">
</issue>

Diagnostics Configuration File

現在硬式編碼文字被視為錯誤,現在在版面配置編輯器中標有紅色波浪線:

Layout using Diagnostics Configuration

注意

若要讓任何新的組態檔變更生效,任何目前開啟的版面配置檔案都必須重新開啟。

疑難排解

以下是一些可能的常見問題。

  • 請確定沒有 XML 格式錯誤。
  • 建置動作已正確設定為 AndroidResourceAnalysisConfig

已知問題

  • 在檔案第一次變更之前,才會填入錯誤板。