Nie można rozpoznać symbolu „Motyw” w styles.xml (Android Studio)


175

Zrzut ekranu

Od dziś Android Studio nie może znaleźć motywów AppCompat w styles.xml, ale na przykład AppCompatActivity w kodzie jest rozpoznawane. Moja wersja Android Studio to 2.2.2, numer kompilacji AI-145.3360264

Próbowałem już zaktualizować do najnowszych narzędzi do kompilacji, skompilować wersję sdk (25) itp., Ale to nie rozwiązało problemu.

W tej chwili zainstalowałem (z menedżera sdk):

  • Android api: 19 i 23
  • narzędzia platformy sdk: 25.0.1
  • narzędzia sdk: 25.2.3
  • narzędzia do budowania: 23.0.2 i 25.0.1
  • repozytorium wsparcia: 40
  • repozytorium google: 39

i kilka innych, których nie powinno być tutaj wymienianie.

build.gradle aplikacji:

apply plugin: 'com.android.application'

android {
    compileSdkVersion 23
    buildToolsVersion '25.0.1'
    defaultConfig {
        applicationId "xxx.xxxxxxxx.xxxxxxxxx" //not the real applicationId
        minSdkVersion 14
        targetSdkVersion 19
        versionCode 1
        versionName "1.0"
        testInstrumentationRunner "android.support.test.runner.AndroidJUnitRunner"
    }
    buildTypes {
        release {
            minifyEnabled true
            shrinkResources true
            proguardFiles getDefaultProguardFile('proguard-android.txt'), 'proguard-rules.pro'
        }
        debug {

        }
    }
}

dependencies {
    compile fileTree(include: ['*.jar'], dir: 'libs')
    compile files('libs/RootTools.jar')
    compile 'com.android.support:support-v4:23.+'
    compile 'com.android.support:support-v13:23.+'
    compile 'com.android.support:appcompat-v7:23.+'
    compile 'com.android.support:design:23.+'
    compile 'com.android.support:cardview-v7:23.+'
    compile 'com.android.support.constraint:constraint-layout:1.0.0-beta4'
    compile 'de.hdodenhof:circleimageview:2.1.0'
}

4
Czy projekt się kompiluje, czy tylko IDE narzeka? Unieważnij pamięć podręczną / uruchom ponownie.
Eugen Pechanec

1
Invalidate cache / restart nic nie zmieniło, tylko IDE narzeka na to i kompilacja działa dobrze. Przepraszam za to, że mogłem marnować czas,
martwiłem się

1
Mam

10
stackoverflow.com/a/48734990/8311441 Kiedy każde inne rozwiązanie zawiodło To mi pomogło
Tabish

1
Właśnie natknąłem się na ten problem (w Android Studio 3.1.3). Usunięcie appcompat-v7i zsynchronizowanie przed ponownym dodaniem pomogło. Głosujmy wszyscy za i miejmy nadzieję na aktualizacje tutaj issuetracker.google.com/issues/67790757
sunadorer

Odpowiedzi:


216

Inne rozwiązanie, które działało dla mnie z Androidem Studio 3.1.2:

usuń je, build.gradlejeśli je masz:

'com.android.support:appcompat-v7:27.1.1' 'com.android.support:design:27.1.1'

następnie zsynchronizuj, cofnij usunięcie i zsynchronizuj ponownie.


22
Pracował, bardzo dziwnie: D
mes

3
znakomity. próbowałem 5 lub 6 innych odpowiedzi, ale to w końcu zadziałało. dzięki!
Albert C Braun

2
Jeśli to było twoje rozwiązanie, tak jak moje, możesz po prostu wyczyścić i odbudować po zrobieniu tego raz, a naprawi to ponownie.

5
Cóż, to było głupie, haha, ale zadziałało. Uwielbiam buggy AS. Dzięki za wskazówkę.
Sam

4
To działa, po prostu skomentuj i cofnij komentarz na gradledependencies{
Nakamoto

105

Napotkałem to po aktualizacji do Android Studio 3.1.

Żadna z innych odpowiedzi wymienionych tutaj nie działała dla mnie, jednak kiedy zmieniłem moją wersję lib obsługującą appcompat do najnowszej, 28.0.0-alpha1a potem z powrotem 27.1.0, działała.

Wygląda na to, że nowa wersja Android Studio utraciła połączenie z miejscem, z którym została zsynchronizowana biblioteka, i wystarczyło ją zresetować.


Dzięki za to. Podobnie jak ty, żadna z pozostałych odpowiedzi nie działała dla mnie po aktualizacji do AS 3.1, ale to załatwiło sprawę. Musisz się tylko zsynchronizować po każdej zmianie.
Ted Hopp

7
Byłem na 26.0.1 i aktualizacja do 27.1.1 (i kompilacja wersji z 26 na 27) spowodowała, że ​​wszystkie błędy zniknęły (dosłownie nic innego nie zrobiłoby)
Daniel Wilson

4
Powrót do 26.0.1, a następnie do 27.1.1 również działa
adek111

8
To nie jest dobre, że jest to rozwiązanie, które z mojego doświadczenia działa najbardziej niezawodnie. AS nie powinien wymagać tego rodzaju hackerskich rozwiązań.
jwehrle

1
To rozwiązanie zadziałało. Jestem po prostu rozczarowany, że głupie rozwiązywanie problemów z IDE + Gradle zajmuje dużo czasu.
Rohan

91

Nie musisz niczego zmieniać.

Wystarczy nacisnąć mały przycisk na górze „Synchronizuj projekt z plikami Gradle”


8
Android Studio 3.1 i ten sam problem.
miłość na żywo

15
^ Musiałem przełączyć moją wersję lib obsługującą appcompat do najnowszej, 28.0.0-alpha1a potem z powrotem, 27.1.0zanim działała w AS 3.1 - wydaje się, że nowa wersja AS utraciła połączenie z miejscem, z którym biblioteka została zsynchronizowana i po prostu musiała ją zresetować
kassim

9
Android Studio 3.1.1 i ten sam problem
Coeus

3
Nie rozwiązuje mojego problemu
jrswgtr

7
Mój zostanie naprawiony tylko przez zamknięcie projektu, usunięcie go z listy ostatnich projektów (zanotowanie ścieżki projektu), a następnie ponowne otwarcie projektu. Może to zmusi pamięć podręczną do odbudowy ...
SammyT

86

EDYCJA: Jak zauważył @Alexey , błąd nadal pojawia się w Android Studio w wersji 3.1.4

To zadziałało dla mnie:

  • Kliknij opcję Plik> Zamknij projekt
  • Otwórz ponownie projekt z okna dialogowego Studio.

wprowadź opis obrazu tutaj


3
Zwróć uwagę, że spowoduje to również zresetowanie preferencji okna - rozmiary różnych paneli, zakładki wyświetlane na początku itd. Zmieni to również wariant kompilacji, w którym się znajdujesz, z powrotem do debugowania. To skutecznie usunie wszystkie preferencje i ustawienia edytora dla projektu.
InsanityOnABun

To zadziałało! Ale także ciekawy, dlaczego tak się stało w pierwszej kolejności. Zmodyfikowałem kilka kolorów w moim colors.xml. Nie rozumiesz, w jaki sposób jest to powiązane lub może to być błąd AS 3.1.2?
Rohit Sharma

Błąd AndroidStudio. Jak wspomniał @InsanityOnABun , zamknięcie i otwarcie projektu w ten sposób resetuje wiele rzeczy. W trakcie tego procesu problem związany z błędem znika.
Ευάγγελος Μπίλης

1
@ ΕυάγγελοςΜπίλης właśnie napotkał ten błąd w Android Studio 3.1.3 i rozwiązał go po swojemu; możesz zaktualizować swoją odpowiedź, że wszyscy wiedzą, że działa również w systemie AS 3.1.3.
Atif Farrukh

Żadna z pozostałych odpowiedzi nie zadziałała, ale tak się stało! Cudownie .. Działa doskonale na AS 3.1.3 . Dziwnie zacząłem otrzymywać ten błąd dopiero po zmodyfikowaniu czegoś w stylach, chociaż
wycofałem

37

Dzieje się tak z powodu funkcji o nazwie „pamięć podręczna kompilacji”, która jest domyślnie włączona w kompilacji wtyczki systemu Android od wersji 2.3.0. Tworzy pliki w pamięci podręcznej kompilacji poza folderem projektu (w moim przypadku - w \ Users \% username% \. Android \ build-cache). Pliki te mają być wspólne dla twoich projektów.

A następnie Android Studio nie może poruszać się po tych plikach. To wszystko.

Jeśli chcesz wyłączyć Build Cache, dodaj android.enableBuildCache=falsedo gradle.propertiespliku. Następnie uruchom ponownie Android Studio.

więcej informacji tutaj: https://developer.android.com/studio/build/build-cache.html#disable_build_cache


2
Naprawdę dzięki, zaktualizuj swoją odpowiedź i powiedz innym, że powinni ponownie uruchomić Android Studio po zmianie gradle.propertiespliku
Igor Tyulkanov

2
To działało przez chwilę, ale potem błąd wkradł się z powrotem.
rmtheis

to nie jest rozwiązanie, musimy włączyć pamięć podręczną kompilacji ORAZ nie widzieć tego błędu.
MDP

@mdp Rozwiązaniem jest naprawienie błędu w Android Studio. To jest obejście.
babay

27

Miałem ten sam problem. Jedynym rozwiązaniem, które zadziałało dla mnie, było ręczne usunięcie bibliotek wsparcia w systemie plików i zsynchronizowanie projektu, aby umożliwić Android Studio pobranie ich ponownie.

Kroki:

  1. Przejdź do folderu projektu w systemie plików
  2. Iść do .idea\libraries
  3. Usuń wszystkie Gradle__com_android_support_****.xmlpliki
  4. Otwórz Android Studio
  5. Wybierz File > Sync with File System
  6. Gdy to zrobisz, wybierz File > Sync Project with Gradle Files
  7. Build Project

A teraz twój błąd powinien zniknąć !!!


Tylko w ten sposób działało dla wersji 28 build tool. :)
Farya

Działa jak marzenie! Dzięki!
Hexise

@Tricky Bay Czy masz rozwiązanie tego problemu? Dzięki! stackoverflow.com/questions/53323910/…
Eric

19

możesz kliknąć plik -> unieważnij Cache / Restart ... jeśli to nie rozwiąże problemu, możesz zamknąć projekt (plik-> zamknij projekt) i zaimportować go (plik -> nowy -> zaimportuj projekt.


W moim przypadku Invalidate Caches / Restart ...zadziałało. Wydaje się, że przyczyna tego błędu jest różna.
wonsuc

1
To zadziałało dla mnie. zamknij projekt + usuń projekt (z x po prawej stronie u góry) + zaimportuj istniejący projekt Android Studio 3.1.3 com.android.tools.build:gradle:3.1.3
Jan

Pracowałeś w 2018 roku! android studio 3.1.3 gradle 3.1.3
PanCrucian

12

Przełączyłem obsługę lib na wersję 27.1.1 i problem został rozwiązany. Wygląda na jakiś błąd w 27.1.0


2
Zgadzam się, nie używaj 27.1.0, jeśli masz przeglądarkę. Moja aplikacja miała 20 awarii dziennie. Issuetracker.google.com/issues/74130311 Naprawiono w 27.1.1, a moja aplikacja wydaje się ładować szybciej, ponieważ setUserVisibleHint ładuje najpierw widoczny fragment.
SammyT,

6
@SammyT - Nie sądzę, aby ten konkretny problem miał związek z 27.1.0 w porównaniu z 27.1.1, ponieważ miałem ten sam problem z 27.1.1. Myślę, że to po prostu zmiana wersji biblioteki wsparcia usuwa błąd, niezależnie od używanej konkretnej wersji. Zobacz odpowiedź @kassim .
Ted Hopp

1
@TedHopp Zgadzam się z tobą. W przypadku tego konkretnego problemu zamknięcie projektu i usunięcie projektów z ostatnich projektów, a następnie ponowne otwarcie projektu rozwiązuje problem (niezależnie od wersji biblioteki wsparcia). Przepraszam, że mój komentarz nie jest zgodny z moim zamierzeniem, po prostu dodałem uważaj, aby używać 27.1.0, jeśli masz viewpager, ponieważ jest błąd w tej wersji biblioteki.
SammyT

Dzięki, to zadziałało po wielu próbach. Użyłem kompilacji sdk 27 ​​i zaktualizowałem każdy do 27.1.1
sanjeeb

Nie, nie, używam 27.1.1 i problem nadal występuje.
Eli,

10

Przeszedłem przez ten sam problem, kiedy zaktualizowałem do alfa-2.

Spojrzałem na ten link: http://tools.android.com/recent , ale jedyne, co działało dobrze, to:

Zmień to: Classpath 'com.android.tools.build:gradle:2.3.0-alpha2'

W tym celu: Classpath „com.android.tools.build:gradle:2.2.3”

W pliku build.gradle (projekt)


4

Tylko to działało dla mnie

  • Zamknij projekt (Plik> Zamknij projekt)
  • Importuj / ponownie otwórz projekt ponownie ( NIE z ostatniego )

Błąd powinien zostać rozwiązany teraz.

Jeśli to się nie powiedzie , spróbuj poniżej-

  • Otwórz build.gradle, usuń appcompact-v7zależność i zsynchronizuj projekt.
  • Dodaj appcompact-v7zależność i zsynchronizuj.

Być może masz problem ze swoją zależnością. Które rozwiązanie się sprawdziło?
Khemraj

3

Napotkałem ten sam problem, jedyną różnicą jest to, że używałem Studio 2.2.3. Oto, co rozwiązało mój problem:

W moim stopniu na poziomie projektu miałem:

classpath 'com.android.tools.build:gradle:2.3.0-alpha2' (co było wynikiem aktualizacji studia)

które zastąpiłem: classpath 'com.android.tools.build:gradle:2.2.3'

Myślę, że powinieneś poszukać kompatybilnej ścieżki klas dla swojej konfiguracji gradle.


2

Miałem ten sam problem po połączeniu Firebase z moją aplikacją. Zaktualizowanie pliku build.gradle w module aplikacji załatwiło sprawę, zaktualizowano do:

implementation 'com.android.support:appcompat-v7:27.1.1'
implementation 'com.android.support:design:27.1.1'
implementation 'com.android.support.constraint:constraint-layout:1.0.2'
implementation 'com.google.firebase:firebase-database:11.8.0'

1

Miałem również ten sam problem, gdy zaktualizowałem moje studio Android z wersji 2.2.2 do wersji 2.3 Canary. Chociaż nowa wersja beta 2.3 została wydana, to używa wtyczki gradle 2.2.3, która jest stabilna.

Więc po prostu zmień zależność ścieżki klas w skrypcie build.gradle na poziomie projektu z alfa na 2.2.3 i zsynchronizuj ją. To rozwiąże problem lub zmieni wersję na bardziej odpowiednią w stosunku do wersji Twojego kanału.

Więcej o Gradle Obejrzyj ten Gradle Recipes for Android Ken Kousen - Gradle Summit 2016

https://www.youtube.com/watch?v=4L6wHTVmxGA


1

W nowszych wersjach Android Studio jesteśmy proszeni o użycie „AppCompat”. Niektórzy użytkownicy odznaczają to i nadal używają rozszerzenia Theme.AppCompat. To stanowi o tym błędzie. To samo stało się ze mną.

Rozwiązaniem jest dodanie tej linii do pliku build.gradle (aplikacja).

compile 'com.android.support:appcompat-v7:26.1.0'

1

@Daniel Wilson skomentował jedną z odpowiedzi, która rozwiązała ten problem. W odpowiedzi chciałem dodać add, aby zwrócić większą uwagę na to rozwiązanie.

Aktualizacja compileSdkVersioniz targetSdkVersion26 na 27 (a potem oczywiście aktualizacja zależności) wyeliminowała za mnie błędy.


1

Mój został naprawiony przez usunięcie pliku .gradle z folderu i ponowne zaimportowanie projektu w Android Studio


1

Miałem też problem z Androidem Studio 3.1, synchronizacja mi nie pomaga.

Potem wróciłem do

`'com.android.support:design:27.1.0'` from : `'com.android.support:design:27.1.1'`

i dodano android.enableBuildCache=falsedo, gradle.propertiesaby wyłączyć pamięć podręczną kompilacji


1

To dziwne, napotykam ten problem jak poniżej:

  • Android Studio to 3.1.2
  • obsługuje wersję lib 27.0.0

Rozwiązuję to poniżej:

  1. zmień obsługę lib na 27.1.0 i „Synchronizuj projekt z plikami Gradle”, wtedy ten błąd zniknie
  2. zmień wersję obsługi lib na 27.0.0 , i „Synchronizuj projekt z plikami Gradle”, wtedy ten błąd nie pojawi się ponownie

1

Usunięto .idea i .gradle z folderu projektu. Następnie zsynchronizuj z plikami Gradle, zadziałało.


0

Napotkałem ten sam problem podczas aktualizacji oprogramowania Android Studio. Oto co zrobiłem:

Przejdź do ustawień Gradle w następujący sposób (ta ścieżka dotyczy komputerów Mac, ale powinna być podobna w systemie Windows):

Android Studio -> Preferencje -> Kompilacja, wykonanie, wdrożenie -> Gradle.

Następnie wybierz „Użyj domyślnego opakowania ocen (zalecane)”.

Jeśli masz już wybraną tę opcję, Twój problem musi leżeć gdzie indziej.


0

Zmieniłem moją wersję gradle z

classpath 'com.android.tools.build:gradle:2.3.0'

do

classpath 'com.android.tools.build:gradle:2.2.3'

i działa teraz!


0

W Android Studio 3.1.3 proste obejście:

„Synchronizuj projekt z plikami Gradle”


0

Jeśli żadna z metod wymienionych przez innych współtwórców nie działa dla Ciebie.

Więc proszę, po prostu zignoruj ​​to ...

Nawet trzepoczący urzędnicy również powiedzieli, że ignorują te błędy.

Uwaga *** Zignoruj ​​tylko po wypróbowaniu wszystkich metod. Jeśli powyższe metody rozwiązują błędy, w przeciwnym razie możesz je zignorować.

Tego typu błędy występują po zainstalowaniu najnowszej wersji flutter sdk, gradle, android studio i innych wtyczek - pakiety

Jeśli używasz najnowszej wersji, musisz zignorować te błędy.

Korzystając z naszej strony potwierdzasz, że przeczytałeś(-aś) i rozumiesz nasze zasady używania plików cookie i zasady ochrony prywatności.
Licensed under cc by-sa 3.0 with attribution required.