wake-up-neo.com

Symbol kann nicht aufgelöst werden AppCompatActivity - Support v7-Bibliotheken werden nicht erkannt?

Ich versuche herauszufinden, warum mein Android Studio die AppCompat v7-Bibliothek nicht richtig erkennt. Die folgende Import-Anweisung wird grau angezeigt und sagt, es gibt kein Paket für support.v7.app. Unten ist meine Aktivitätsdatei:

import Android.support.v7.app.AppCompatActivity;


public class XApplicationActivity extends AppCompatActivity

Mein build.grade:

compile "com.Android.support:appcompat-v7:22.0.0"
compile "com.Android.support:support-annotations:$Android_SUPPORT_VERSION"
compile "com.Android.support:support-v4:$Android_SUPPORT_VERSION"

Meine Projekteinstellungen:

minSdkVersion = 14
targetSdkVersion = 21
compileSdkVersion = 21
buildToolsVersion = "22.0.1"

Ich bin wirklich verwirrt, warum dies immer noch Probleme aufwirft. Dinge, die ich schon probiert habe:

  • Projekt reinigen/neu aufbauen
  • Caches ungültig machen und neu starten
  • Überprüfung einer Milliarde Mal, um sicherzustellen, dass die Unterstützungsbibliothek installiert ist (ich habe absolut das neueste Support-Repository und die neuesten Bibliotheken installiert)

Weiß jemand von irgendwelchen Korrekturen? Es hat mich viel Zeit gekostet und es ist wirklich frustrierend.

42
hendersawn

Okay, ich habe es repariert, indem ich es zum vierten Mal rekonstruiert habe, um eine saubere Montage von ./gradlew durchzuführen ... Android Studio ist eine seltsame Sache

14
hendersawn

Für mich Auch nach dem Upgrade auf appcompat-v7:22.1.0, in dem AppCompatActivty hinzugefügt wurde. Das Problem wurde für mich nicht gelöst, gab Android Studio dasselbe Problem

Symbol "AppCompatActivity" kann nicht aufgelöst werden

Manchmal hilft das Löschen der Android-Studio-Caches.

In Android Studio habe ich nur die Caches gelöscht und mit der folgenden Option neu gestartet:

Datei-> Caches ungültig machen/neu starten

85
Nicks

1.Löschen Sie den .idea-Ordner
2. Schließen Sie das Projekt, und öffnen Sie es erneut
3. Datei -> Projekt mit Gradle-Dateien synchronisieren

Das hat bei mir funktioniert

28

AppCompatActivity wurde nur in Version 22.1.0 der Unterstützungsbibliothek hinzugefügt. Davor hieß es ActionBarActivity.

Sie sollten für alle Support-Bibliotheken dieselbe Version verwenden. Zum Zeitpunkt des Schreibens ist die neueste Version 23.1.1 (die neueste finden Sie hier https://developer.Android.com/tools/support-library/index.html#revisions ) Der Abschnitt mit den Abhängigkeiten in Ihrer gradle-Datei sollte folgendermaßen aussehen.

implementation "com.Android.support:support-v4:23.1.1"
implementation "com.Android.support:appcompat-v7:23.1.1"
implementation "com.Android.support:support-annotations:23.1.1"
21
Richard Strand

Wir müssen keine Dateien löschen, nur die Caches werden für den Neustart der Konfiguration ungültig:

 introducir la descripción de la imagen aquí

12
Elenasys

Wenn Sie androidX anstelle von Android verwenden, müssen Sie Änderungen vornehmen

import Android.support.v7.app.AppCompatActivity;

zu

import androidx.appcompat.app.AppCompatActivity;

und ändern

<Android.support.constraint.ConstraintLayout>

zu

<androidx.constraintlayout.widget.ConstraintLayout>
7
Mina chen

Ich änderte von "... erweitert ActionBarActivity" auf "... erweitert AppCompatActivity" und versuchte das Bereinigen, Neustarten, Caches ungültig machen/Neustart und kam nicht weiter. Alle meine Versionen waren auf dem neuesten Stand.

Was schließlich gelöst wurde, bestand darin, sicherzustellen, dass mein Import korrekt war:

import Android.support.v7.app.AppCompatActivity;

Aus irgendeinem Grund wurde es nicht automatisch wie gewohnt eingerichtet und ich musste es manuell hinzufügen.

Hoffe das hilft jemandem!

4
Gravitoid

Die von mir verfolgte Lösung wird in den folgenden Schritten zusammengefasst:

  1. Wählen Sie im Menü Build die Option Bibliotheken und Abhängigkeiten bearbeiten

 enter image description here

  1. Stellen Sie sicher, dass Sie das neueste Paket AppCompat hinzufügen, wenn es nicht hinzugefügt wird

 enter image description here

 enter image description here

  1. Nachdem Sie es hinzugefügt haben, clean Ihr Projekt und rebuild es.

 enter image description here

4
wbadry

Ich habe den gleichen Fehler mit. Falls es anderen hilft. Dokumentieren, was für mich am nützlichsten war (14. Januar 2017). Erprobt alle Invalidate, baut sauber, löscht sogar .gradle/und passt die Support-Bibliotheken an mehreren Stapelüberlauf-Antworten an.

Ich habe festgestellt, dass das Upgrade der Settings.gradle Gradle-Version behoben wurde (es war 2.1.3). Etwas in Gradle Toolchain scheint Klassenpfad 'com.Android.tools.build:gradle: 2.2.3'

3
Pradeep Kumar

Die beste Lösung ist auf jeden Fall zu Datei> Invalidate Caches & Restart zu gehen

Dann im Dialogmenü ... Klicken Sie auf Caches ungültig machen und neu starten. Warten Sie eine Minute oder wie lange es dauert, um Ihr Projekt zurückzusetzen, dann sollten Sie gut sein.

-

Ich sollte beachten, dass ich auch auf das Problem der Referenzierung einer Ressourcendatei oder "R" -Datei gestoßen bin, die sich in einer compileOnly-Bibliothek befand, die ich in meinem Gradle hatte. (d. h. compileOnly library> res> referenzierte XML-Datei) Ich habe aufgehört, auf diese Datei in meinem Java-Code zu verweisen, und es hat mir geholfen. Seien Sie also müde, wo Sie Dateien referenzieren.

1
airvine

Ich hatte das gleiche Problem in meinem neu gestarteten Projekt mit mindestens API 23, und schließlich habe ich diese Codezeilen in meine Gradle-Abhängigkeitsdatei eingefügt und den Fehler behoben :)

 implementation 'com.Android.support:appcompat-v7:28.0.0'
 implementation 'com.Android.support:customtabs:28.0.0'
 implementation 'com.Android.support:support-vector-drawable:28.0.0'
 implementation 'com.Android.support:support-media-compat:28.0.0'
1
Imran

Löschen Sie den .idea-Ordner in Ihrem Projekt, der sich versteckt. Gehen Sie zu Ihrem Projekt im System und klicken Sie auf Strg + H, um es anzuzeigen. Dann löschen Sie es. Starten Sie nun Ihr Android-Studio neu. Ich werde das Problem beheben. Es arbeitet für mich. 

Datei-> Caches ungültig machen/Neustart funktioniert bei mir.

0
anoja madusanka

Wenn die angegebenen Lösungen nicht funktionieren, erstellen Sie ein neues Projekt mit 'KOTLIN' als Sprache, auch wenn Sie mit Java arbeiten. Ersetzen Sie dann den Hauptordner des neuen Projekts durch den Hauptordner des alten Projekts.

0
Ave Maria

Hintergrundinformation:

Meine IDE

Android Studio 3.1.3
Build #AI-173.4819257, built on June 4, 2018
JRE: 1.8.0_152-release-1024-b02 AMD64
JVM: OpenJDK 64-Bit Server VM by JetBrains s.r.o
Windows 7 6.1

Erste Lösung: Importieren Sie das Projekt erneut und erklären Sie sich nicht damit einverstanden, das Android Gradle Plug-in zu aktualisieren.

Zweite Lösung: Ihre Dateien sollten diese fragmente enthalten.

build.gradle:

buildscript {
  repositories {
    jcenter()
    google()//this is important for gradle 4.1 and above
  }
  dependencies {
    classpath 'com.Android.tools.build:gradle:3.1.3' //this Android plugin for gradle requires gradle version 4.4 and above
  }
}
allprojects {
  //...
  repositories {
    jcenter()
    google()//This was not added by update IDE-wizard-button.
    //I need this when using the latest com.Android.support:appcompat-v7:25.4.0 in app/build.gradle
  }
}

Folgen Sie entweder der Empfehlung Ihrer IDE, um Ihre Gradle-Version auf Version 4.4 zu aktualisieren, oder nehmen Sie dies in Betracht

distributionUrl=https\://services.gradle.org/distributions/gradle-4.4-all.Zip

Optional buildToolsVersion in app/build.gradle ändern:

Android {
compileSdkVersion 25
buildToolsVersion '27.0.3'

app/build.gradle: Kommentieren Sie die Abhängigkeiten aus und lassen Sie den Build fehlschlagen (automatisch oder auslösen).

dependencies {
//compile fileTree(dir: 'libs', include: ['*.jar'])
//compile 'com.Android.support:appcompat-v7:25.1.0'
}

app/build.gradle: Kommentieren Sie die Abhängigkeiten erneut. Es wurde geraten, sie von der Kompilierung zur Implementierung zu ändern, aber im Moment ist es nur eine Warnung.

dependencies {
compile fileTree(dir: 'libs', include: ['*.jar'])
compile 'com.Android.support:appcompat-v7:25.1.0'
}

Nach dem Neuaufbau des Projekts sollte die Importanweisung nicht mehr ausgegraut sein. Versuchen Sie, Strg + h für die Klasse ..__ aufzurufen. Aber aus irgendeinem Grund sind die Fehlermarkierungen in diesen Klassenreferenzierungsanweisungen immer noch vorhanden. Um sie zu entfernen, müssen Sie den Projektbaum ausblenden und wiederherstellen view oder Schließen Sie das Projekt alternativ und öffnen Sie es erneut.

Endlich ist es soweit.

Weitere Lesungen:

Aktualisierungsgrad

Verwenden Sie die neuen Abhängigkeitskonfigurationen

Wenn Sie für meine Lösung einen Bilderpfad bevorzugen, können Sie mein blog besuchen.

0
catweazle

Wenn Sie es bereits versucht haben

  1. Caches ungültig machen und neu starten
  2. Projekt bereinigen/neu erstellen
  3. ./gradlew sauber montieren
  4. implementierung hinzugefügt
    com.Android.support:support-v4:23.1.1
    com.Android.support:appcompat-v7:23.1.1
    "com.Android.support:support-annotations:23.1.1"
  5. Import in Android.support.v7.app.AppCompatActivity korrigiert;
  6. Eventuell vorhandene Androidx-Importe korrigiert

Dann lesen Sie bitte weiter unten

Endlich die Lösung gefunden

Ich habe alles versucht, was in allen Antworten erwähnt wurde, und bin gescheitert.

Gehe zu gradle.properties mache diese Flags falsch

Android.useAndroidX = false

// Drittanbieter-Bibliotheken automatisch für AndroidX konvertieren

Android.enableJetifier = false

Die oben genannten Flaggen waren

"stimmt, für mich und daher wird gradle keine v7 komponenten herunterladen"

0
jkuruvila