Aby zachować zgodność z naszym modelem rozwoju gałęzi głównej i zapewnić stabilność platformy w ekosystemie, w II i IV kwartale 2026 r. opublikujemy kod źródłowy w AOSP. Do tworzenia i współtworzenia AOSP zalecamy używanie android-latest-release zamiast aosp-main. Gałąź android-latest-release manifestu zawsze będzie odnosić się do najnowszej wersji przesłanej do AOSP. Więcej informacji znajdziesz w sekcji Zmiany w AOSP.
Google uses AI technology to translate content into your preferred language. AI translations can contain errors.
Preparaty do dezynfekcji
Zadbaj o dobrą organizację dzięki kolekcji
Zapisuj i kategoryzuj treści zgodnie ze swoimi preferencjami.
Sanitaryzery to grupa dynamicznych narzędzi do analizy, które wykrywają błędy w programach w czasie wykonywania za pomocą dodatkowego instrumentowania wstawionego przez kompilator. Obejmuje to wykrywanie problemów z bezpieczeństwem pamięci. Android obsługuje i zdecydowanie zaleca używanie tych środków do dezynfekcji:
AdresSanitizer wspomagany przez sprzęt (HWASan)
HWASan to główny oczyszczacz, który wykrywa problemy z bezpieczeństwem pamięci. Wymaga systemu ARM64 i może wykrywać:
przepełnienie lub niewykorzystanie bufora stosu i kupy
Użycie sterty po zwalnianiu
Użycie stosu po zakresie
Użycie stosu po powrocie
podwójne wolne lub dzikie wolne,
Sanitaryzator adresów (ASan)
ASan to narzędzie podobne do HWASan. Działa na większej liczbie platform, ale nie jest obsługiwany na Androidzie.
KernelAddressSanitizer (KASan)
KASan to odpowiednik narzędzi w przestrzeni użytkownika w jądrze. Ma ona tę samą implementację kompilatora. KASan i ASan/HWASan uzupełniają się, ponieważ jedno narzędzie dotyczy jądra, a drugie przestrzeni użytkownika.
Zalecamy włączenie obu opcji jednocześnie, aby zmniejszyć liczbę konfiguracji kompilacji i matrycy testów.
Sanitaryzator UndefinedBehavior (UBSan)
UBSan wykonuje instrumentację w czasie kompilacji, aby sprawdzić różne typy niezdefiniowanego zachowania (nie związanego z zabezpieczeniami pamięci). Obejmuje to sprawdzanie przepełnienia podpisanych i niepodpisanych liczb całkowitych (IntSan), sprawdzanie granic dla tablic o statycznym rozmiarze (BoundsSan) oraz wiele innych typów niezdefiniowanego zachowania. IntSan i BoundsSan nadają się też do włączenia w produkcji jako środek zapobiegający naruszeniom bezpieczeństwa.
Treść strony i umieszczone na niej fragmenty kodu podlegają licencjom opisanym w Licencji na treści. Java i OpenJDK są znakami towarowymi lub zastrzeżonymi znakami towarowymi należącymi do firmy Oracle lub jej podmiotów stowarzyszonych.
Ostatnia aktualizacja: 2025-07-27 UTC.
[[["Łatwo zrozumieć","easyToUnderstand","thumb-up"],["Rozwiązało to mój problem","solvedMyProblem","thumb-up"],["Inne","otherUp","thumb-up"]],[["Brak potrzebnych mi informacji","missingTheInformationINeed","thumb-down"],["Zbyt skomplikowane / zbyt wiele czynności do wykonania","tooComplicatedTooManySteps","thumb-down"],["Nieaktualne treści","outOfDate","thumb-down"],["Problem z tłumaczeniem","translationIssue","thumb-down"],["Problem z przykładami/kodem","samplesCodeIssue","thumb-down"],["Inne","otherDown","thumb-down"]],["Ostatnia aktualizacja: 2025-07-27 UTC."],[],[]]