Udostępnij za pośrednictwem


Diagnostyka układu systemu Android

Diagnostyka układu systemu Android została zaprojektowana w celu poprawy jakości plików układu systemu Android przez wyróżnienie typowych problemów z jakością i przydatnych optymalizacji. Ta funkcja jest dostępna zarówno dla programu Visual Studio 16.5 lub nowszego, jak i Visual Studio dla komputerów Mac 8.5 lub nowszego.

Domyślny zestaw analizatorów jest udostępniany dla szerokiego zakresu problemów, a każdy z nich można dostosować tak, aby obejmował konkretne potrzeby projektu. Analizatory są luźno oparte na systemie linting systemu Android.

Włączanie diagnostyki układu systemu Android w programie Visual Studio 2019

Upewnij się, że ustawienie diagnostyki układu, Włącz diagnostykę układu, jest włączone. Aby uzyskać dostęp do tej strony opcji, wybierz pozycję Narzędzia>Opcje, a następnie wybierz pozycję Edytor tekstu Android>XML>Zaawansowane:

Options dialog showing how to enable diagnostics option

Po włączeniu edytor układu systemu Android wyświetli problemy:

Android diagnostics enabled on Visual Studio 2019

Funkcje

W poniższych sekcjach opisano dostępne funkcje w diagnostyce układu systemu Android.

Analizatory

Analizatory służą do wykrywania problemów w plikach układu, zmniejszania wartości zakodowanych na stałe, poprawy wydajności i błędów flagi. Aby uzyskać listę analizatorów, zobacz Analizatory diagnostyczne projektanta systemu Android

Konfiguracja diagnostyczna

Analizatory można skonfigurować przy użyciu pliku XML, umożliwiając zmianę domyślnego poziomu ważności, ignorowanie niektórych plików i przekazywanie zmiennych.

Możesz użyć pliku odniesienia, jeśli masz zestaw konfiguracji, które chcesz udostępnić w wielu aplikacjach systemu Android. Aby użyć tej funkcji, utwórz nowy plik konfiguracji i dołącz -baseline go do nazwy pliku. Najpierw są stosowane konfiguracje punktu odniesienia, a następnie pozostałe pliki konfiguracji.

Napiwek

Może to być przydatne, jeśli chcesz zignorować zestaw problemów w nowej lub istniejącej aplikacji systemu Android.

Format to:

<?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>

Uwaga

Obecnie jedynymi zmiennymi są MAX_VIEW_COUNT (wartość domyślna: 80) i MAX_DEPTH (wartość domyślna: 10) odpowiednio dla TooManyViews i TooDeepLayout .

Poziomy ważności to:

  • Sugestia
  • Informacje
  • Ostrzeżenie
  • Error
  • Ignoruj

Dodawanie pliku konfiguracji

Utwórz nowy plik XML w katalogu głównym projektu aplikacji systemu Android. Nazwa pliku nie jest ważna, ale w tym przykładzie użyto polecenia AndroidLayoutDiagnostics.xml:

Add New Item

Po dodaniu nowego pliku XML powinien zostać wyświetlony w drzewie projektu aplikacji systemu Android:

Android App Project Tree

Upewnij się, że akcja kompilacji jest ustawiona na Wartość AndroidResourceAnalysisConfig na panelu właściwości. Najprostszym sposobem ściągnięcia panelu właściwości dla nowego pliku jest kliknięcie pliku prawym przyciskiem myszy i wybranie właściwości. Po wyświetlaniu panelu właściwości należy zmienić akcję kompilacji na AndroidResourceAnalysisConfig:

Set Build Action in Item Properties

Teraz, gdy masz pusty plik XML, musisz dodać <configuration> element główny. W tym momencie możesz dostosować domyślne zachowanie wszelkich obsługiwanych problemów. Jeśli chcesz mieć pewność, że zakodowane ciągi są traktowane jako błędy, dodaj:

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

Diagnostics Configuration File

Teraz, gdy tekst zakodowany w kodzie jest uznawany za błąd, jest on teraz oflagowany czerwonym przełącznikiem w edytorze układu:

Layout using Diagnostics Configuration

Uwaga

Aby zmiany w nowym pliku konfiguracji zaczęły obowiązywać, wszystkie aktualnie otwarte pliki układu muszą zostać ponownie otwarte.

Rozwiązywanie problemów

Poniżej przedstawiono niektóre typowe problemy.

  • Upewnij się, że nie ma błędu formatu XML.
  • Akcja kompilacji jest poprawnie ustawiona na Wartość AndroidResourceAnalysisConfig.

Znane problemy

  • Okienko błędów nie zostanie wypełnione dopiero po zmianie pliku po raz pierwszy.