Chcę usunąć wszystkie nieużywane układy, ciągi, rysunki, kolory itp. Z mojego katalogu res Androida. Czy są jakieś narzędzia, które dadzą mi listę plików i które mogę usunąć z mojego repozytorium i elementów w określonych plikach (np. Nieużywane wpisy ciągu), które nie są już używane?
źródło
Od wersji ADT 16 można używać systemu Android Lint . To naprawdę niesamowite narzędzie.
Ma jednak pewne problemy (nie wiem, czy zostały już naprawione) i jeśli chcesz usunąć setki rzekomo nieużywanych zasobów, zalecam kilkukrotne ręczne skompilowanie projektu podczas usuwania zasobów, aby upewnić się, że Lint nie usuń coś potrzebnego.
źródło
Analyze > Inspect Code...
znaleźć wiele rzeczy, w tym nieużywane deklaracje i metody .lint --check UnusedResources <project-path>
Extra Translations
razem / automatycznie?Ponieważ obsługa ADT w Eclipse zakończyła się, musimy korzystać z Android Studio.
W systemie Android Studio 2.0+
Refactor > Remove Unused Resources...
źródło
System kompilacji Gradle dla Androida obsługuje „zmniejszanie zasobów”: automatyczne usuwanie zasobów, które podczas kompilacji nie są używane w pakiecie aplikacji. Oprócz usuwania zasobów w projekcie, które w rzeczywistości nie są potrzebne w środowisku wykonawczym, usuwa to również zasoby z bibliotek, w zależności od tego, czy aplikacja nie jest faktycznie potrzebna.
Aby to włączyć, dodaj linijkę shrinkResources true w swoim pliku stopni.
Sprawdź oficjalną dokumentację tutaj,
http://tools.android.com/tech-docs/new-build-system/resource-shrinking
źródło
minifyEnabled true
Otwieramy źródło narzędzie, które usuwa wszystkie nieużywane zasoby w projekcie Android na podstawie informacji o strzępach. Można go znaleźć tutaj: https://github.com/KeepSafe/android-resource-remover
źródło
Uważaj, jeśli używasz wielu smaków podczas uruchamiania szarpnięć. Lint może dawać fałszywe niewykorzystane zasoby w zależności od wybranego smaku.
źródło
W Android Studio 2.0 i nowszych w menu wybierz Refactor -> kliknij Usuń nieużywane zasoby ...
(lub)
skrót również dostępny
Naciśnij Ctlr + Alt + Shift + i jedno okno dialogowe pojawi się, a następnie wpisz nieużywane , znajdziesz liczbę opcji wybierz i usuń nieużywane zasoby
źródło
W Android Studio
Analizuj -> Uruchom inspekcję według nazwy
(Skrót do Maca Shift + Command + opcja + i, Ctrl + Shift + A w systemie Windows / Linux).
I wpisz „nieużywane zasoby”.
W ten sposób możesz usunąć nieużywane zasoby, zmienne, symbole, lokalizację, biblioteki ... itp.
Wybierz żądaną kontrolę z listy, a następnie wybierz zakres kontroli -> OK
źródło
Uwaga programiści Android Wear : „Usuń nieużywane zasoby” usunie plik xml, w którym zadeklarujesz nazwę funkcji (res / values / wear.xml), a telefon nie będzie mógł połączyć się z zegarkiem. Spędziłem godziny próbując znaleźć ten błąd w mojej aplikacji.
źródło
Aby sprawdzić string.xml.
To proste (przynajmniej w mojej wersji Eclipse)
W Eclipse na Androida (Mam wersję v22.6.2-1085508)
Teraz, gdy otworzysz plik strings.xml, zobaczysz, że nieużywany ciąg znaków jest podświetlony.
Możesz naprawić inne potencjalne problemy.
źródło
Może przydatny Andround Unused Resources to aplikacja Java, która skanuje projekt w poszukiwaniu nieużywanych zasobów. Niewykorzystane zasoby niepotrzebnie zajmują miejsce, wydłużają czas kompilacji i zaśmiecają listę autouzupełniania IDE.
Aby z niego skorzystać, upewnij się, że katalog roboczy jest katalogiem głównym projektu Android i uruchom:
java -jar AndroidUnusedResources.jar
https://code.google.com/p/android-unused-resources/
źródło
Kiedy zdefiniujemy prawdę zmniejszania zasobów, możemy również określić, które zasoby chcemy zachować, a które nie. Dodałem plik xml do folderu res / raw o nazwie keep.xml
zanim przejdziesz dalej, wygeneruj pojedynczą podpisaną kompilację i sprawdź w narzędziu analizatora apk, które pokaże drawable-xhdpi-v4 ma messenger_button_send_round_shadow.png, który chcę usunąć z tego testu
wykonując messenger_ * wszystkie pliki zaczynające się od name messenger w folderze wysuwnym zostaną usunięte lub na odwrót mam określony plik do usunięcia
w ten sposób możesz samodzielnie usuwać pliki z biblioteki, możesz także usuwać układy według @ layout / name layout, jeśli układ ten był używany przez układ i dlatego ...
źródło
Naprawdę doskonałe odpowiedzi sugerują dobre narzędzia
Ale jeśli zamierzasz usunąć png-drawables (lub inne pliki graficzne ), powinieneś również rozważyć przeniesienie wszystkich folderów drawable-xxxx z projektu do folderu tymczasowego, a następnie przebuduj wszystko i spójrz na kompilację lista wiadomości, która powie ci, których brakuje.
Może to być szczególnie przydatne, jeśli chcesz uzyskać przegląd zasobów, z których faktycznie korzystasz, i być może zastąpić je czcionką ikony lub zasobami svg, być może za pomocą biblioteki Android Iconics .
źródło
Android Assets Viewer został zaprojektowany, aby pomóc wizualnie sprawdzić grafikę spakowaną (jako pliki do rysowania) w pliku .apk (możesz również przesłać plik zip z folderu res), jeśli wolisz):
http://www.cellebellum.net/AndroidAssetsViewer/
Tak więc w przypadku usuwania nieużywanych zasobów może to działać dobrze w połączeniu z kontrolami Lint, aby upewnić się, że wszystko, co powinno tam być, jest. Pomaga również zidentyfikować kilka innych potencjalnych problemów z twoimi drawables: niewłaściwe wiadro, niewłaściwa grafika itp.
źródło
Po uruchomieniu Lint w Android Studio i znalezieniu wszystkich nieużywanych zasobów możesz kliknąć jeden z nich na karcie Inspekcja. Zawiera szczegółowe informacje na temat problemu i kilka opcji jego rozwiązania. Jednym z nich jest Usuń wszystkie nieużywane zasoby. Wybranie tej opcji powoduje usunięcie wszystkich nieużywanych zasobów.
źródło